/*
 * Uzupełnienia style.css po rezygnacji z jQuery UI i colorbox
 * oraz style nowych elementów (reklamy, okno dialogowe, Turnstile).
 */

/* --- miejsce na pasek reklamowy na dole ekranu --- */
body { padding-bottom: 90px; }
@media (max-width: 900px) { body { padding-bottom: 50px; } }
.sticky-ad {
    position: fixed; left: 0; bottom: 0; width: 100%; z-index: 99999;
    display: flex; align-items: center; justify-content: center;
    padding: 5px 0; background-color: #fff; text-align: center;
}
.sticky-ad:empty { display: none; }
.sticky-ad .gpt-slot { margin: 0 auto !important; }
.vj-fixed-mobile.pos-br { top: auto !important; bottom: 0; right: 0; }
#div-gpt-ad-1593080639035-0 { min-height: 600px; }
.video-player { text-align: center; width: 640px; max-width: 100%; margin: 0 auto 15px auto; position: relative; z-index: 9999999999; }
.video-player .players { position: relative; z-index: 9999999999; min-height: 480px; }

/* --- komunikat netstel.pl/info --- */
.remote-info { width: 100%; max-width: 1180px; margin: 0 auto -15px auto; padding: 0 20px; background-color: #fff; box-sizing: border-box; }
.remote-info > div { min-height: 90px; margin-bottom: 15px; }
@media (max-width: 900px) {
    .remote-info { margin-bottom: 0; }
    .remote-info > div { padding-top: 10px; }
}

/* --- autouzupełnianie (zamiennik jQuery UI autocomplete) --- */
.ui-autocomplete {
    position: absolute; z-index: 10000; margin: 0; padding: 0; list-style: none;
    background: #fff; border: 1px solid #c5c5c5; box-shadow: 0 4px 12px rgba(0, 0, 0, .15);
    max-height: 300px; overflow-y: auto; overflow-x: hidden;
}
.ui-autocomplete[hidden] { display: none; }
.ui-menu .ui-menu-item { margin: 0; padding: 0; cursor: pointer; }
.ui-menu .ui-menu-item a { display: block; padding: 4px 8px; text-decoration: none; box-sizing: border-box; }
.ui-menu .ui-menu-item a.ui-state-active { background-color: #eaf4ff; }

/* --- okno "Twój czas lotu" (zamiennik colorbox) --- */
dialog.dialog {
    border: 0; padding: 30px; width: 475px; max-width: calc(100vw - 20px); box-sizing: border-box;
    max-height: calc(100vh - 20px); overflow: auto;
}
dialog.dialog::backdrop { background: rgba(0, 0, 0, .7); }
dialog#flight-time { display: none; }
dialog#flight-time[open] { display: block; }
button.dialog-close, button.dialog-close:hover, button.dialog-close:focus {
    position: absolute; right: 8px; top: 6px; width: auto; height: auto; margin: 0; padding: 4px 8px;
    border: 0; background: none; box-shadow: none;
    font-size: 28px; line-height: 1; cursor: pointer; color: #333;
}
@media (max-width: 900px) { dialog.dialog { padding: 30px 10px 10px; } }
#flight-time-form input[type="number"] { -moz-appearance: textfield; }
#flight-time-form .hours-input, #flight-time-form .minutes-input { position: relative; }
#flight-time-form .unit { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); color: #888; font-size: 13px; pointer-events: none; }
#flight-time-form input[type="date"] { font-family: inherit; }

/* --- Turnstile --- */
.cf-turnstile-box { display: inline-block; min-width: 300px; min-height: 65px; vertical-align: middle; }
/* style.css: .captcha.input-div to dawne pole wyniku (float right, 80px) - widget Turnstile ma 300px */
#flight-time-form .captcha.input-div { float: none; width: auto; height: auto; border: 0; text-align: center; }
.captcha-result { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
@media (max-width: 900px) { .captcha-result { width: 100%; flex-direction: column; align-items: stretch; } }

/* --- komunikaty formularzy --- */
[data-form-message].success { color: #29a56a; font-weight: bold; }
[data-form-message].failure { color: #d9000d; }

/* --- tabela z sortowaniem --- */
.flights-table th[data-sort-key] { cursor: pointer; }

/* --- artykuły partnerskie i linki sponsorowane --- */
.promo-section { position: relative; }
.promo-ext-link, .promo-ext-link:active, .promo-ext-link:visited, .promo-ext-link:hover {
    color: #d9000d; font-size: 14px; position: absolute; right: 0; top: 6px; display: flex; align-items: center;
}
.promo-ext-link::before {
    content: ""; display: inline-block; width: 18px; height: 18px; margin-right: 2px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18 10h-4v-4c0-1.104-0.896-2-2-2s-2 0.896-2 2l0.071 4h-4.071c-1.104 0-2 0.896-2 2s0.896 2 2 2l4.071-0.071-0.071 4.071c0 1.104 0.896 2 2 2s2-0.896 2-2v-4.071l4 0.071c1.104 0 2-0.896 2-2s-0.896-2-2-2z' fill='%23D9000D'/%3E%3C/svg%3E");
}
@media screen and (max-width: 900px) { .promo-ext-link { top: auto; position: relative; margin-bottom: 10px; } }
.buy-promo-article, .buy-promo-article:visited, .buy-promo-article:link, .buy-promo-article:active {
    color: #d9000d; text-decoration: underline; padding: 10px 0; font-size: 14px;
}
.promo-articles-paginator li.active a { font-weight: bold; }

/* --- serwisy Netstel na stronie głównej --- */
.websites { display: flex; flex-wrap: wrap; justify-content: center; row-gap: 30px; column-gap: 10px; max-width: 100%; padding: 20px 0; margin: 0 auto; }
.websites span { display: block; width: 19%; color: #000; }
.websites span .logotype { display: flex; justify-content: center; align-items: center; width: 100%; background: #fff; color: #333; border: 1px solid #efefef; }
.websites .logotype img { max-width: 100%; }
.websites span p { font-size: 12px; font-weight: 400; margin: 8px 0 0 0; padding: 0; }
a.link { font-size: 12px; font-weight: 400; color: #398bd6; }
a.link:hover { text-decoration: underline; }
@media only screen and (max-width: 768px) { .websites span { width: 48%; } }

/* --- strona błędu --- */
.error-page .content { min-height: 300px; padding-top: 20px; }

/* --- stopka: lista serwisów jako select na telefonach --- */
.contact-submit { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; }
.popup-yellow {color:#000;font-weight:bold}
.popup-yellow .maplibregl-popup-content {background:#ffba00;box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.3), 0 6px 20px 0 rgba(0, 0, 0, 0.29);border-radius:8px}
.popup-yellow .maplibregl-popup-content a {color:#000;font-size:14px}
.popup-yellow .maplibregl-popup-close-button {font-weight:600;background:#000 !important;color:#fff !important;border-radius:20px !important;right:-10px !important;top:-10px !important;width:25px !important;height:25px !important;padding:0 2px 0 1px !important}

.popup-green {color:#fff;font-weight:bold}
.popup-green .maplibregl-popup-content {background:#29a56a;box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.3), 0 6px 20px 0 rgba(0, 0, 0, 0.29);border-radius:8px}
.popup-green .maplibregl-popup-content a {color:#fff;font-size:14px}
.popup-green .maplibregl-popup-close-button {font-weight:600;background:#fff !important;color:#29a56a !important;border-radius:20px !important;right:-10px !important;top:-10px !important;width:25px !important;height:25px !important;padding:0 2px 0 1px !important}
.maplibregl-ctrl-group button{ margin-bottom: 0; }

/* --- pasek wyszukiwania: reguły #search-bar-form z style.css dla klasy (dwa paski na stronie trasy) --- */
.search-bar-form .input-div .error{
	background-color: #f4f6fa;
}
.search-bar-form{
	display: inline-block;
	width: 82%;
	float: right;
}
.search-bar-form fieldset{
	margin: 0;
	padding: 0;
	border: none;
	display: inline-block;
	width: 77%;
}
.search-bar-form .arrow{
	display: inline-block;
	background: url("../img/thin-arrow.png") no-repeat center center;
    padding: 5px 15px;
    float: left;
    margin-top: 17px;
}
.search-bar-form .input-div{
	width: 47%;
	display: inline-block;
	background-color: #fff;
	float: left;
}
.search-bar-form .submit-search{
	display: inline-block;
	float: right;
}
@media screen and (max-width: 900px) {
    .search-bar-form .input-div, .search-bar-form, .search-bar-form fieldset, .search-bar-form .submit-search{
    		width: 100%;
    		box-sizing: border-box;
    		float: none;
    	}
    .search-bar-form .input-div{
    		margin-bottom: 5px;
    	}
    .search-bar-form .arrow{
    		display: none;
    	}
}
