.gdo-form-wrap,
.gdo-form-wrap * {
	box-sizing: border-box;
}

.gdo-form-wrap {
	--gdo-accent: #f4c400;
	--gdo-dark: #181818;
	--gdo-muted: #686868;
	--gdo-border: #dedede;
	--gdo-bg: #f6f6f6;
	width: 100%;
	max-width: none;
	margin: 0;
	color: var(--gdo-dark);
}

/* Pasek tytułowy stron formularza i panelu korzysta z nagłówka Blocksy. */
body.gdo-add-listing-page .hero-section {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: 155px !important;
	background-color: #dbdbdb !important;
	background-image: url("../images/ogloszenia-hero.png") !important;
	background-repeat: no-repeat !important;
	background-position: left center !important;
	background-size: auto calc(100% - 20px) !important;
}

body.gdo-add-listing-page .hero-section > [class*="ct-container"],
body.gdo-add-listing-page .hero-section .entry-header {
	position: relative;
	z-index: 1;
	min-height: 155px;
	background: transparent !important;
}

body.gdo-add-listing-page .hero-section .page-title,
body.gdo-add-listing-page .hero-section h1 {
	position: relative;
	z-index: 2;
	margin: 0;
	color: #111 !important;
	font-weight: 850;
	text-align: center;
}

.gdo-form-content {
	max-width: 1040px;
	margin: 0 auto;
}

.gdo-form-intro {
	margin-bottom: 26px;
	padding-left: 18px;
	border-left: 6px solid var(--gdo-accent);
}

.gdo-form-intro p {
	margin: 0;
	color: var(--gdo-muted);
}

.gdo-listing-form { display: grid; gap: 22px; }
.gdo-form-section { padding: clamp(20px, 4vw, 38px); border: 1px solid var(--gdo-border); background: #fff; }
.gdo-form-section__head { display: flex; gap: 16px; align-items: flex-start; margin-bottom: 28px; padding-bottom: 18px; border-bottom: 1px solid var(--gdo-border); }
.gdo-form-section__head > span { display: grid; flex: 0 0 42px; width: 42px; height: 42px; place-items: center; background: var(--gdo-accent); font-weight: 900; }
.gdo-form-section__head h3 { margin: 0 0 5px; font-size: 22px; }
.gdo-form-section__head p { margin: 0; color: var(--gdo-muted); }

.gdo-fields-grid,
.gdo-media-grid,
.gdo-option-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.gdo-field { margin-bottom: 20px; }
.gdo-field--full:last-child,
.gdo-field:last-child { margin-bottom: 0; }
.gdo-field label { display: block; margin-bottom: 8px; font-weight: 750; }
.gdo-field label span { color: #b42318; }
.gdo-field small { display: block; margin-top: 7px; color: var(--gdo-muted); font-size: 12px; }
.gdo-field input[type="text"],
.gdo-field input[type="email"],
.gdo-field input[type="tel"],
.gdo-field select,
.gdo-field textarea { width: 100%; min-height: 50px; padding: 12px 14px; border: 1px solid #b9b9b9; border-radius: 0; background: #fff; color: #181818; font: inherit; }
.gdo-field textarea { min-height: 190px; resize: vertical; }
.gdo-field input:focus,
.gdo-field select:focus,
.gdo-field textarea:focus { outline: 3px solid rgba(244,196,0,.25); border-color: #826a00; }

.gdo-input-suffix { display: flex; }
.gdo-input-suffix input { border-right: 0 !important; }
.gdo-input-suffix span { display: grid; min-width: 56px; place-items: center; border: 1px solid #b9b9b9; background: var(--gdo-bg); color: #333; font-weight: 800; }

.gdo-upload-box { min-height: 190px; padding: 18px; border: 1px dashed #a5a5a5; background: var(--gdo-bg); text-align: center; }
.gdo-upload-box input[type="file"] { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: 0; }
.gdo-featured-preview { display: grid; min-height: 110px; margin-bottom: 12px; place-items: center; overflow: hidden; background: #eaeaea; }
.gdo-featured-preview img { display: block; width: 100%; height: 200px; object-fit: cover; }
.gdo-featured-preview .dashicons { width: auto; height: auto; color: #8b8b8b; font-size: 50px; }
.gdo-upload-box p { margin: 12px 0 0; color: var(--gdo-muted); }

.gdo-gallery-preview { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; margin-top: 16px; }
.gdo-gallery-item { position: relative; aspect-ratio: 1; overflow: hidden; background: #eee; }
.gdo-gallery-item img { width: 100%; height: 100%; object-fit: cover; }
.gdo-gallery-item button { position: absolute; top: 4px; right: 4px; width: 28px; height: 28px; padding: 0; border: 0; background: #111; color: #fff; font-size: 22px; line-height: 1; cursor: pointer; }

.gdo-option-card { display: flex; gap: 12px; min-height: 92px; padding: 18px; border: 1px solid var(--gdo-border); background: var(--gdo-bg); cursor: pointer; }
.gdo-option-card input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--gdo-accent); }
.gdo-option-card strong,
.gdo-option-card small { display: block; }
.gdo-option-card small { margin-top: 5px; color: var(--gdo-muted); }

.gdo-button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; padding: 11px 20px; border: 1px solid #181818; border-radius: 0; font: inherit; font-weight: 800; text-decoration: none; cursor: pointer; }
.gdo-button--primary { min-width: 210px; background: var(--gdo-accent); color: #111; }
.gdo-button--primary:hover { background: #111; color: #fff; }
.gdo-button--secondary { background: #fff; color: #111; }
.gdo-button:disabled { opacity: .6; cursor: wait; }
.gdo-link-button { margin-top: 10px; padding: 0; border: 0; background: transparent; color: #8b1111; text-decoration: underline; cursor: pointer; }

.gdo-form-actions { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px; border: 1px solid var(--gdo-border); background: #111; color: #fff; }
.gdo-form-actions p { margin: 0; }

.gdo-message { max-width: 1040px; margin: 0 auto 22px; padding: 16px 18px; border-left: 5px solid #2271b1; background: #f0f6fc; }
.gdo-message--success { border-color: #00a32a; background: #edfaef; }
.gdo-message--error { border-color: #d63638; background: #fcf0f1; }
.gdo-message ul { margin: 8px 0 0 20px; }

@media (max-width: 760px) {
	body.gdo-add-listing-page .hero-section,
	body.gdo-add-listing-page .hero-section > [class*="ct-container"],
	body.gdo-add-listing-page .hero-section .entry-header {
		min-height: 112px !important;
	}

	body.gdo-add-listing-page .hero-section {
		background-size: auto calc(100% - 20px) !important;
		background-position: left center !important;
	}

	.gdo-form-content { padding: 0 14px; }
	.gdo-fields-grid,
	.gdo-media-grid,
	.gdo-option-grid { grid-template-columns: 1fr; }
	.gdo-gallery-preview { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.gdo-form-actions { align-items: stretch; flex-direction: column; }
	.gdo-form-actions .gdo-button { width: 100%; }
}

/* Publiczna lista i pojedyncze ogłoszenie. */
.gdo-public-page,
.gdo-public-page * { box-sizing: border-box; }
.gdo-public-page { --gdo-accent:#f4c400; --gdo-dark:#171717; --gdo-border:#dedede; --gdo-muted:#666; color:var(--gdo-dark); }
.gdo-public-container { width:min(1280px, calc(100% - 32px)); margin:0 auto; padding:48px 0 70px; }
.gdo-public-hero { position:relative; overflow:hidden; background:#dedede; border-top:1px solid #d2d2d2; border-bottom:1px solid #d2d2d2; }
.gdo-public-hero__image { position:absolute; right:max(50px, calc((100vw - 1280px)/2 + 50px)); top:50%; width:330px; height:240px; background:url("../images/ogloszenia-hero.png") center/contain no-repeat; opacity:.38; transform:translateY(-50%); }
.gdo-public-hero__content { position:relative; z-index:1; max-width:1280px; margin:0 auto; padding:48px 50px; text-align:left; }
.gdo-public-hero__content>span { display:block; margin:0 0 8px; color:#111; font-size:12px; font-weight:900; letter-spacing:.15em; }
.gdo-public-hero h1 { margin:0; color:#111; font-size:clamp(38px,5vw,68px); line-height:1; letter-spacing:-.035em; font-weight:800; max-width:760px; }
.gdo-public-hero p { max-width:760px; margin:16px 0 0; color:#444; font-size:17px; line-height:1.55; }

.gdo-public-nav { display:flex; gap:15px; margin:0 0 30px; }
.gdo-public-nav a { display:flex; flex:1; min-width:0; min-height:66px; align-items:center; justify-content:center; gap:8px; padding:20px; background:#f7f7f7; color:#000; font-size:16px; font-weight:600; line-height:1.25; text-align:center; text-decoration:none; transition:background .15s ease,color .15s ease; }
.gdo-public-nav a:hover,
.gdo-public-nav a:focus,
.gdo-public-nav a.is-active { background:#000; color:#fff; }
.gdo-public-nav__icon { flex:0 0 auto; font-size:16px; line-height:1; }
.gdo-public-nav__label { min-width:0; font-size:inherit; line-height:inherit; }

.gdo-filters { display:grid; grid-template-columns:2fr repeat(3,minmax(150px,1fr)); gap:14px; padding:24px; border:1px solid var(--gdo-border); background:#f6f6f6; }
.gdo-filters__field label { display:block; margin:0 0 6px; font-size:12px; font-weight:800; text-transform:uppercase; }
.gdo-filters__field input,
.gdo-filters__field select { width:100%; min-height:46px; padding:10px 12px; border:1px solid #bdbdbd; border-radius:0; background:#fff; color:#171717; }
.gdo-filters__field--price > div { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.gdo-filters__actions { display:flex; grid-column:1/-1; align-items:center; gap:18px; }
.gdo-filters__actions a { color:#333; font-size:13px; text-decoration:underline; }
.gdo-listings-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin:38px 0 20px; }
.gdo-listings-heading h2 { margin:0; font-size:28px; }
.gdo-listings-heading span { color:var(--gdo-muted); }
.gdo-listings-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.gdo-listing-card { overflow:hidden; border:1px solid var(--gdo-border); background:#fff; transition:transform .18s ease, box-shadow .18s ease; }
.gdo-listing-card:hover { transform:translateY(-3px); box-shadow:0 15px 32px rgba(0,0,0,.08); }
.gdo-listing-card__media { position:relative; aspect-ratio:4/3; overflow:hidden; background:#eee; }
.gdo-listing-card__media > a:first-child { display:block; width:100%; height:100%; }
.gdo-listing-card__media img { display:block; width:100%; height:100%; object-fit:cover; }
.gdo-favorite-button { position:absolute; top:12px; right:12px; display:grid; width:40px; height:40px; place-items:center; border:1px solid rgba(0,0,0,.14); background:#fff; color:#555; font-size:21px; line-height:1; text-decoration:none; }
.gdo-favorite-button.is-active { background:#111; color:#fff; }
.gdo-listing-card__body { padding:18px; }
.gdo-listing-card__topline { display:flex; justify-content:space-between; gap:10px; margin-bottom:10px; color:#666; font-size:12px; font-weight:700; text-transform:uppercase; }
.gdo-listing-card h3 { margin:0 0 12px; font-size:20px; line-height:1.25; }
.gdo-listing-card h3 a { color:#111; text-decoration:none; }
.gdo-listing-card__price { margin-bottom:14px; font-size:25px; font-weight:900; }
.gdo-listing-card__meta { display:grid; gap:7px; color:#666; font-size:13px; }
.gdo-empty-state { padding:55px 22px; border:1px solid var(--gdo-border); background:#f7f7f7; text-align:center; }
.gdo-empty-state strong { font-size:22px; }
.gdo-pagination ul { display:flex; justify-content:center; gap:6px; margin:34px 0 0; padding:0; list-style:none; }
.gdo-pagination a,
.gdo-pagination span { display:grid; min-width:40px; height:40px; place-items:center; border:1px solid #bbb; color:#111; text-decoration:none; }
.gdo-pagination .current { border-color:#111; background:#111; color:#fff; }

.gdo-single-layout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr); gap:34px; align-items:start; }
.gdo-single-gallery__main { position:relative; display:grid; min-height:480px; place-items:center; overflow:hidden; border:1px solid var(--gdo-border); background:#f3f3f3; }
.gdo-single-gallery__open { display:grid; width:100%; min-height:480px; max-height:680px; padding:0; place-items:center; border:0; border-radius:0; background:transparent; color:inherit; cursor:zoom-in; }
.gdo-single-gallery__open:hover,
.gdo-single-gallery__open:focus { background:transparent; color:inherit; }
.gdo-single-gallery__main img { display:block; width:100%; height:100%; max-height:680px; object-fit:contain; }
.gdo-gallery-arrow { position:absolute; z-index:3; top:50%; display:grid; width:48px; height:54px; padding:0; place-items:center; border:1px solid rgba(255,255,255,.35); border-radius:0; background:rgba(0,0,0,.42); color:#fff; font-size:39px; font-weight:300; line-height:1; cursor:pointer; transform:translateY(-50%); transition:background .15s ease; }
.gdo-gallery-arrow:hover,
.gdo-gallery-arrow:focus { background:rgba(0,0,0,.78); color:#fff; }
.gdo-gallery-arrow--prev { left:14px; }
.gdo-gallery-arrow--next { right:14px; }
.gdo-single-gallery__counter { position:absolute; z-index:3; right:14px; bottom:14px; padding:6px 10px; background:rgba(0,0,0,.52); color:#fff; font-size:12px; font-weight:800; }
.gdo-single-gallery__thumbs { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; margin-top:10px; }
.gdo-single-gallery__thumbs button { aspect-ratio:1; overflow:hidden; padding:0; border:2px solid transparent; background:#eee; cursor:pointer; }
.gdo-single-gallery__thumbs button.is-active { border-color:#111; }
.gdo-single-gallery__thumbs img { display:block; width:100%; height:100%; object-fit:cover; }
body.gdo-lightbox-is-open { overflow:hidden; }
.gdo-lightbox[hidden],
.gdo-lightbox__arrow[hidden],
.gdo-gallery-arrow[hidden],
.gdo-single-gallery__counter[hidden] { display:none !important; }
.gdo-lightbox { position:fixed; z-index:999999; inset:0; display:grid; place-items:center; padding:24px; }
.gdo-lightbox__backdrop { position:absolute; inset:0; width:100%; height:100%; padding:0; border:0; background:rgba(0,0,0,.88); cursor:zoom-out; }
.gdo-lightbox__dialog { position:relative; z-index:1; display:grid; grid-template-columns:64px minmax(0,1fr) 64px; width:min(1500px,100%); height:min(92vh,980px); align-items:center; }
.gdo-lightbox__figure { display:grid; width:100%; height:100%; margin:0; place-items:center; overflow:hidden; }
.gdo-lightbox__figure img { display:block; max-width:100%; max-height:calc(92vh - 54px); object-fit:contain; }
.gdo-lightbox__figure figcaption { align-self:end; min-width:64px; margin-top:10px; padding:6px 10px; background:rgba(0,0,0,.55); color:#fff; font-size:13px; font-weight:800; text-align:center; }
.gdo-lightbox__close { position:absolute; z-index:4; top:0; right:0; display:grid; width:48px; height:48px; padding:0; place-items:center; border:1px solid rgba(255,255,255,.35); border-radius:0; background:rgba(0,0,0,.55); color:#fff; font-size:34px; line-height:1; cursor:pointer; }
.gdo-lightbox__arrow { display:grid; width:54px; height:64px; padding:0; place-items:center; border:1px solid rgba(255,255,255,.35); border-radius:0; background:rgba(0,0,0,.42); color:#fff; font-size:46px; line-height:1; cursor:pointer; }
.gdo-lightbox__arrow:hover,
.gdo-lightbox__arrow:focus,
.gdo-lightbox__close:hover,
.gdo-lightbox__close:focus { background:rgba(255,255,255,.18); color:#fff; }
.gdo-lightbox__arrow--prev { justify-self:start; }
.gdo-lightbox__arrow--next { justify-self:end; }
.gdo-single-summary { position:sticky; top:30px; padding:28px; border:1px solid var(--gdo-border); background:#fff; }
.gdo-single-summary__category { margin-bottom:10px; color:#666; font-size:12px; font-weight:800; text-transform:uppercase; }
.gdo-single-summary__price { margin-bottom:22px; font-size:38px; font-weight:900; line-height:1; }
.gdo-single-facts { margin:0 0 22px; padding:0; border-top:1px solid var(--gdo-border); list-style:none; }
.gdo-single-facts li { display:flex; justify-content:space-between; gap:20px; padding:13px 0; border-bottom:1px solid var(--gdo-border); }
.gdo-single-facts span { text-align:right; }
.gdo-single-contact { display:grid; gap:9px; margin-bottom:15px; }
.gdo-single-contact a { display:block; padding:14px; background:#111; color:#fff; font-weight:800; text-align:center; text-decoration:none; }
.gdo-single-favorite { width:100%; }
.gdo-single-favorite.is-active { background:#f4c400; }
.gdo-single-description { margin-top:38px; padding:32px; border:1px solid var(--gdo-border); background:#fff; }
.gdo-single-description h2 { margin-top:0; }

@media (max-width:1020px) {
	.gdo-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.gdo-listings-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.gdo-single-layout { grid-template-columns:1fr; }
	.gdo-single-summary { position:static; }
}

@media (max-width:760px) {
	body.gdo-add-listing-page .hero-section,
	body.gdo-add-listing-page .hero-section > [class*="ct-container"],
	body.gdo-add-listing-page .hero-section .entry-header { min-height:112px !important; }
	body.gdo-add-listing-page .hero-section { background-size:auto calc(100% - 20px) !important; background-position:left center !important; }
	.gdo-public-hero__content { padding:32px 22px !important; }
	.gdo-public-hero__image { right:22px; top:50%; width:180px; height:130px; opacity:.26; transform:translateY(-50%); }
	.gdo-public-hero h1 { font-size:34px; }
	.gdo-public-container { width:min(100% - 24px,1280px); padding-top:28px; }
	.gdo-filters { grid-template-columns:1fr; padding:16px; }
	.gdo-filters__actions { align-items:stretch; flex-direction:column; }
	.gdo-filters__actions .gdo-button { width:100%; }
	.gdo-listings-grid { grid-template-columns:1fr; }
	.gdo-single-gallery__main { min-height:300px; }
	.gdo-single-gallery__thumbs { grid-template-columns:repeat(4,minmax(0,1fr)); }
	.gdo-single-summary,
	.gdo-single-description { padding:20px; }

	.gdo-public-nav { display:grid; grid-template-columns:1fr; gap:10px; margin-bottom:22px; }
	.gdo-public-nav a { min-height:58px; padding:16px; font-size:14px; }
	.gdo-single-gallery__open { min-height:300px; }
	.gdo-gallery-arrow { width:40px; height:46px; font-size:32px; }
	.gdo-gallery-arrow--prev { left:8px; }
	.gdo-gallery-arrow--next { right:8px; }
	.gdo-lightbox { padding:10px; }
	.gdo-lightbox__dialog { grid-template-columns:44px minmax(0,1fr) 44px; height:96vh; }
	.gdo-lightbox__figure img { max-height:calc(96vh - 54px); }
	.gdo-lightbox__arrow { width:40px; height:52px; font-size:36px; }
	.gdo-lightbox__close { top:4px; right:4px; width:42px; height:42px; }
}


/* 0.3.8 - kolejność galerii */
.gdo-gallery-sort-note{margin:14px 0 8px;color:#555;font-size:13px}
.gdo-gallery-item{touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;border:2px solid transparent}
.gdo-gallery-item.is-dragging{z-index:20;opacity:.72;cursor:grabbing;border-color:#111;transform:scale(.96)}
.gdo-gallery-item img{-webkit-user-drag:none;pointer-events:none}
.gdo-gallery-item .gdo-gallery-drag{position:absolute;top:4px;left:4px;right:auto;width:30px;height:28px;padding:0;border:0;background:#fff;color:#111;font-size:17px;line-height:28px;cursor:grab;z-index:3;box-shadow:0 1px 5px rgba(0,0,0,.25)}
.gdo-gallery-item .gdo-gallery-remove,
.gdo-gallery-item [data-remove-gallery-item]{position:absolute;top:4px;right:4px;left:auto;width:28px;height:28px;padding:0;border:0;background:#111;color:#fff;font-size:22px;line-height:1;cursor:pointer;z-index:3}
body.gdo-gallery-is-sorting{user-select:none;-webkit-user-select:none}

.gdo-gallery-order-note{margin:12px 0 10px;padding:10px 12px;background:#f4f4f4;border-left:3px solid #111;font-size:13px}


/* 0.3.9 - publiczny profil autora */
.gdo-author-link{color:inherit!important;font-weight:700;text-decoration:underline!important;text-underline-offset:3px}.gdo-author-link:hover{color:#111!important}
