/*
Theme Name: Base Block
Theme URI:
Author: expe
Author URI:
Description: Universal WordPress block theme. Use as parent for child themes.
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: base-block
Tags: block-theme, full-site-editing
*/

/* ─── Spacing token overrides (mobile) ─────────────────────────── */
@media (max-width: 782px) {
	:root {
		--wp--preset--spacing--20: 0.25rem;
		--wp--preset--spacing--30: 0.5rem;
		--wp--preset--spacing--40: 1rem;
		--wp--preset--spacing--50: 1.5rem;
		--wp--preset--spacing--60: 2rem;
		--wp--preset--spacing--70: 2.5rem;
		--wp--preset--spacing--80: 3rem;
		--bb-header-height: 66px;
	}
	
}
:root {
	--bb-header-height: 80px;
}
html {
	scroll-padding-top: var(--bb-header-height);
}

body {
	overflow-x: hidden;
	padding-top: var(--bb-header-height);
}
/* ─── Fixed header ──────────────────────────────────────────────── */
header {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	z-index: 1200;
}



.admin-bar header {
	top: 32px;
}

/* Pasek admina ma 46px poniżej 782px (nie 32px) */
@media (max-width: 782px) {
	.admin-bar header {
		top: 46px;
	}
}

.backdrop-5 {
	backdrop-filter: blur(5px);
}

header .wp-block-navigation-item__content {
	padding: 1rem 0;
}

header .wp-block-navigation__submenu-container {
	border-radius: 0.5rem;
	overflow: hidden !important;
	left: -15px !important;
}

/* Logo — cap wysokości tylko na mobile (desktop trzyma atrybut width:290) */
@media (max-width: 782px) {
	header .wp-block-site-logo img {
		max-height: 50px;
		width: auto;
	}
}

/* ─── Mobile navigation breakpoint → 992px ──────────────────────── */
/* WP core zwija nawigację do hamburgera tylko poniżej 600px.        */
/* Poniżej wymuszamy stan zwinięty w zakresie 600–991px, żeby        */
/* menu mobilne (overlay) działało aż do 992px.                      */
@media (max-width: 991.98px) {
	.wp-block-navigation.is-responsive
		.wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none !important;
	}

	.wp-block-navigation.is-responsive
		.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex !important;
	}
}

/* ─── wp:columns — responsywność 4→2→1 ──────────────────────────── */
/* Rdzeń skacze 4→1 przy 782px. Ta reguła dokłada poziom „2-up"      */
/* w zakresie 600–992px. Poniżej 600px — 1 kolumna (zachowanie       */
/* rdzenia). Kolumny z `is-not-stacked-on-mobile` są pomijane.       */
/* flex-basis 40% (nie 50%) zostawia zapas na dowolny gap kolumn;    */
/* box-sizing border-box wlicza padding/border kolumny — bez tego    */
/* kolumny z paddingiem przelewają wiersz i spadają do 1 na rząd.    */
@media (min-width: 600px) and (max-width: 991.98px) {
	.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: wrap !important;
	}

	.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
		box-sizing: border-box !important;
		flex: 1 1 40% !important;
	}
}

/* ─── Utilities ─────────────────────────────────────────────────── */
.d-none {
	display: none !important;
}

/* ─── Responsywna widoczność ────────────────────────────────────── */
/* Klasy dodaje się w edytorze: panel boczny bloku → Zaawansowane →   */
/* „Dodatkowe klasy CSS". Breakpoint = 782px (mobile = telefon).      */
@media (max-width: 781.98px) {
	.hide-mobile { display: none !important; }
}
@media (min-width: 782px) {
	.hide-desktop { display: none !important; }
}

/* ─── Kolejność elementów flex (mobile) ─────────────────────────── */
/* Klasa na .wp-block-column (lub innym elemencie flex). Działa       */
/* ≤992px — tam gdzie kolumny są zwinięte; desktop bez zmian.         */
/* `first`/`last` do pojedynczych przesunięć; `1`–`6` gdy chcesz      */
/* ustawić pełną kolejność (wtedy oklasuj wszystkie kolumny).         */
@media (max-width: 991.98px) {
	.order-first { order: -1 !important; }
	.order-last  { order: 999 !important; }
	.order-1 { order: 1 !important; }
	.order-2 { order: 2 !important; }
	.order-3 { order: 3 !important; }
	.order-4 { order: 4 !important; }
	.order-5 { order: 5 !important; }
	.order-6 { order: 6 !important; }
}

.sticky-group {
	top: 120px !important;
}

/* Sticky nie ma sensu gdy kolumny się zwijają — wyłącz poniżej 782px */
@media (max-width: 781.98px) {
	.sticky-group {
		position: static !important;
		top: auto !important;
	}
	.home-hero {
		min-height: 260px !important;
	}
	body {

	padding-top: 66px;
}
	
	 /* rodzic pozycji z dzieckiem: flex z zawijaniem, bez kotwicy absolutnej */
  .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation-item.has-child {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    position: static !important;
  }

  /* button z etykietą: wypełnia szerokość, trzyma się w linii */
  .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation-submenu__toggle {
    flex: 1 1 auto !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
  }

  /* ikona strzałki: dosunięta do prawej, w tej samej linii co etykieta */
  .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation-item.has-child
    > .wp-block-navigation__submenu-icon {
    flex: 0 0 auto !important;
    margin-left: auto !important;
    position: static !important;
    order: 1 !important;
  }

  /* sub-menu: łamie linię, pełna szerokość, płynie w dół (rozpycha) */
  .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation__submenu-container {
    flex-basis: 100% !important;
    width: 100% !important;
    order: 2 !important;
    position: static !important;
  }
}

