/*
Theme Name: ZS Portal
Theme URI: 
Author: Zdobywcy Sieci
Author URI: 
Description: 
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: frost
Text Domain: zs-portal
Tags: 
*/

html{
	font-size:10px;
}


body {
    background-color: #f6f7f9 !important;
    background-image: radial-gradient(
            800px circle at 90% -10%,
            var(--wp--preset--color--custom-gradient-1),
            transparent 80%
        ),
        radial-gradient(
            800px circle at 0% 80%,
            var(--wp--preset--color--custom-gradient-2),
            transparent 80%
        );
    background-repeat: no-repeat;
    background-attachment: fixed;
}

.post-grid-first-big li:first-child{
grid-column:1 / span 2;
grid-row: 1 / span 2;
}
.post-grid-item{
position:relative;
overflow:hidden;
}
.post-grid-item.stretch{
height:100%;
min-height:400px;
}



.box-shadow{
transition:box-shadow 0.15s linear;
}
.box-shadow:hover{
box-shadow: 0px 14px 10px -8px rgba(0, 0, 0, 0.05) !important;
}

.post-grid-item.overlay,.post-grid-first-big li:first-child .post-grid-item{
display:flex;
flex-direction:column;
justify-content:flex-end;
align-items:flex-start;
}

.post-grid-item .wp-block-post-featured-image__overlay,.post-grid-first-big li:first-child .post-grid-item .wp-block-post-featured-image__overlay{
transition: opacity .15s linear;
}

.post-grid-item:not(.overlay) .wp-block-post-featured-image__overlay{
opacity: .6;
}

.post-grid-item:hover .wp-block-post-featured-image__overlay{
opacity: .5;
}

.post-grid-item.overlay .post-item-image, .post-grid-first-big li:first-child .post-grid-item .post-item-image{
position:absolute;
top:0;
left:0;
width:100% !important;
height:100% !important;
object-fit:cover;
z-index:0;
}

.post-grid-first-big li:first-child .post-grid-item .post-item-image a, .post-grid-first-big li:first-child .post-grid-item .post-item-image img{
height:100% !important;
}

.post-grid-item.overlay .post-item-desc, .post-grid-first-big li:first-child .post-grid-item .post-item-desc{
position:relative;
z-index:1;
width:100%;
display:flex;
flex-direction:column;
justify-content:flex-start;
align-items:flex-start;

}

.post-grid-item.overlay .post-item-desc, .post-grid-first-big li:first-child .post-grid-item:not(.overlay) .post-item-desc *{
color:#fff !important;
}

.post-item-desc hr{
width:100%;
}

.readmore-flip{
position:relative;
min-height:calc(var(--wp--preset--font-size--small) + 6px);
max-height:calc(var(--wp--preset--font-size--small) + 6px);
overflow:hidden;

}

.readmore-time,.readmore-show{
position:relative;
transition:all 0.15s linear;
}


.post-grid-item:hover .readmore-time,.post-grid-item:hover .readmore-show{
transform: translateY(-100%);
}

.post-grid-item:hover a:not(.taxonomy-category a),.post-grid-first-big li:first-child .post-grid-item:hover .post-item-desc a:not(.taxonomy-category a){
	color:var(--wp--preset--color--secondary) !important;
}

.post-mansory-grid {
  width: 100%;
}

.post-mansory-grid li {
  width: calc(25% - 20px);     /* 4 kolumny */
  margin-bottom: 20px;
  float: left;    /* WAŻNE */
}

.post-mansory-grid li:nth-child(4n+1) {
  clear: left;    /* Nowy rząd co 4 */
}

.post-mansory-grid li {
  animation: fadeInUp 0.3s ease forwards;
  opacity: 0;
  transform: translateY(20px);
}

@keyframes fadeInUp {
  to { opacity: 1; transform: translateY(0); }
}

.post-mansory-grid li:nth-child(2),.post-mansory-grid li:nth-child(4){
  margin-top:40px;
}

.cat-list-grid {
  display: inline-flex !important;
width:100%;
  flex-wrap: wrap !important;
  gap: 1rem;
  align-items: stretch;
  justify-content: center;
}


.wp-block-term-name {
  white-space: nowrap !important;
  overflow: hidden;
  text-overflow: ellipsis;           
}

.wp-block-term-name a {
  white-space: nowrap !important;
text-decoration:none;
}

.box-hover{
	position:relative;
transition:background-color 0.15s linear;
}
.box-hover a{
transition:color 0.15s linear;
}
.box-hover .icon-container > *{
transtion: fill 0.15s linear, color 0.15s linear;
}
.box-hover:hover{
background-color:var(--wp--preset--color--secondary) !important;
}
.box-hover:hover a{
color:#fff !important;
}

.box-hover:hover .icon-container > *{
fill:#fff !importnat;
color:#fff !important;
}

.box-hover:not(.cat-list) a{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	padding:30px;
	display:flex;
	align-items:flex-end;
}


@media screen and (max-width: 1440px) {
	.txt-l-center{
		text-align:center;
	}
	.post-grid-item.stretch{
		min-height:300px;
	}
	.col-l-hide{
		display:none;
	}
}

@media screen and (max-width: 1024px) {
	.txt-m-center{
		text-align:center;
	}
	
	.col-m-hide{
		display:none;
	}
	
	.post-grid-first-big{
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
	
	.post-grid-first-big li:first-child .post-grid-item{
		min-height:400px;
	}
	
	.post-mansory-grid,.post-grid-normal,.box-grid{
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
	
	.post-mansory-grid li {
  width: calc(50% - 10px);     /* 4 kolumny */
	}
	
	.post-mansory-grid li:nth-child(4){
  margin-top:0px;
}
}

@media screen and (max-width: 767px) {
	
	.col-s-hide{
		display:none;
	}
	
	.w-s-100{
		width:100%;
	}
	
	.txt-s-center{
		text-align:center;
	}
	
	.post-grid-first-big,.box-grid,.post-grid-normal{
		grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
	}
	
	.post-grid-first-big li:first-child {
		grid-column: 1;
		grid-row: 1;
	}
	
	.post-grid-first-big li:first-child .post-grid-item{
		min-height:400px;
	}
	
	.post-mansory-grid{
		grid-template-columns: repeat(1, 2fr)) !important;
	}
	
	.post-mansory-grid li {
		width: 100%;    
	}
	
	.post-mansory-grid li:nth-child(2),.post-mansory-grid li:nth-child(4){
		margin-top:0px;
	}
	
	.post-grid-item.stretch{
		min-height:400px;
	}

	
	.post-grid-footer {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
	
	.col-reverse-s{
		flex-direction:column-reverse;
	}

}

.primary-category-link {
    display:inline-flex;
    align-items:center;
    gap:8px;
    text-decoration:none;
	color:#fff !important;
}

.primary-category-link:hover{
	color:var(--wp--preset--color--primary) !important;
}

.primary-category-link:hover .cat-letter{
	background:var(--wp--preset--color--primary);
}

.cat-letter {
    width:28px;
    height:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:var(--wp--preset--color--secondary);
    color:#fff;
    font-weight:600;
    font-size:20px;
	padding:20px;
	transition: background 0.15s linear;
}


table {
    width: 100%;
    margin: 2rem 0;
    font-size: 15px;
    line-height: 1.5;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 15px;
    box-shadow: 0 6px 20px rgba(0,0,0,.05);
    background-color: #fff;
    table-layout: auto;
	margin-top:32px;
	margin-bottom:32px;
	margin-block-start:32px !important;
	margin-block-end:32px !important;
	border-color:#e9ecef;
	border:0;
}

thead {
    background: #f6f6f6;
}


table td, table th {
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
    white-space: normal;
}
table thead, .wp-block-table thead {
    border-bottom: 2px solid #e9ecef;
}

thead tr:first-child th:first-child {
    border-top-left-radius: 15px;
}

thead tr:first-child th:last-child {
    border-top-right-radius: 15px;
}

table th, .wp-block-table th, table td, .wp-block-table td {
    border: 1px solid #e9ecef;
}

table th, .wp-block-table th, table td, .wp-block-table td {
    padding: 1rem;
    vertical-align: middle;
}

tr > *:not(:first-child) {
    border-left: none;
}

tbody tr:not(:first-child) td {
    border-top: none;
}

@media (max-width: 768px) {
table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
	thead, tbody, tr {
    width: max-content;
}
	th, td {
    min-width: 140px;
}
}


.blog-entry-content img{
	border-radius:12px;
	max-width:100% !important;
}

.box-kopiuj-link {
    display: flex;
    gap: 10px;
    max-width: 600px;
}

.input-link {
    flex: 1;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 12px !important;
}

.btn-kopiuj {
    padding: 10px 16px;
    background: var(--wp--preset--color--secondary) !important;
    color: #fff;
    border: none;
    border-radius: 12px !important;
    cursor: pointer;
	transition: background 0.15s linear;
}

.btn-kopiuj:hover {
    background: var(--wp--preset--color--primary) !important;
}

.post-navigation-link__label{
	font-size:1.6rem;
	color:var(--wp--preset--color--neutral);
}


.blog-main-section{
	z-index:2;
}

.sticky-top-fix{
	top: calc(120px + var(--wp-admin--admin-bar--position-offset, 0px));
}


.spis-tresci {
    max-width: 100%;
	padding-left:20px;
	margin:0;
}
.spis-tresci li {
    margin: 6px 0;
    line-height: 1.5;
}
.spis-tresci a {
    text-decoration: none;
}
.spis-tresci a:hover {
    text-decoration: underline;
	color: var(--wp--preset--color--secondary);
}

.blog-tmpl-search .wp-block-search__input{
	padding:5px 20px;
	background-color:var(--wp--preset--color--custom-border-light);
}

.blog-tmpl-search .wp-block-search__button{
	padding-top:5px;
	padding-bottom:5px;
	line-height:1;
}

.blog-tmpl-search .wp-block-search__button:hover{
	background-color:var(--wp--preset--color--primary) !important;
}


.simple-share-icons{
  display:flex;
  gap:12px;
  justify-content:center;
  align-items:center;
}
.simple-share-icons .share-btn{
  width:40px;
  height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  text-decoration:none;
  transition:transform .2s ease, opacity .2s ease;
  border:1px solid rgba(0,0,0,.12);
}
.simple-share-icons .share-btn:hover{ transform:scale(1.06); }

.simple-share-icons .share-btn svg{ display:block; fill:currentColor; }

.share-facebook{ color:#1877f2; }
.share-x{ color:#000; }
.share-pinterest{ color:#e60023; }

/* jeśli brak obrazka, możesz przygasić Pinterest */
.simple-share-icons .share-pinterest[data-noimage="1"]{
  opacity:.45;
  pointer-events:none;
}

@media screen and (max-width: 1024px) {
	
	.main-nav li{
		font-size:2rem !important;
	}
	.blog-columns{
		flex-direction:column;
		gap: 80px;
	}
	.blog-search-box{
		margin-top:0 !important;
	}
	.blog-entry-content{
		padding-left:20px;
		padding-right:20px;
	}
	
	.blog-columns.header{
		gap:40px;
		align-items:center !important;
	}
	.blog-columns.header h1{
		text-align:center;
	}
	.blog-columns.header .blog-title-meta{
		justify-content:center;
	}
		.main-nav{
	order:3;
}
.search-pop{
	margin-left:auto !important;
}
}

.main-nav li a:hover{
	color:var(--wp--preset--color--primary) !important;
}

.main-nav button{
	border-radius:12px;
	padding:12px;
}

.has-background .wp-block-navigation__responsive-container-open:focus, .has-background .wp-block-navigation__responsive-container-open:hover {
    color: var(--wp--preset--color--contrast) !important;
}


/* Change the WordPress default css to a 1023px media query */
@media (min-width: 1023px) {
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: none !important;
    }
    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        display: block !important;
        width: 100%;
        position: relative;
        z-index: auto;
        background-color: inherit;
    }
	

}
/* Remove the WordPress default for 600px */
@media (min-width: 600px) {
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: flex;
    }
    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        display: none;
    }
}

input:focus,
textarea:focus {
	background-color: var(--wp--preset--color--custom-border-light) !important;
	outline: none;
}

.blog-entry-content h2{
	scroll-margin-top:140px;
}

.header-search-bar {
	max-width: var(--wp--style--global--wide-size);
    width: 100%;
	display:flex;
	justify-content:flex-end;
    background: #fff;
    padding: 0px 0px !important;
    box-sizing: border-box;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease;
	opacity:0;
	margin:0;
}

.header-search-bar.is-open {
    max-height: 200px;
    padding: 10px 0px !important;
	opacity:1;
}

.header-search-bar .wp-block-search__inside-wrapper {
    display: flex;
    gap: 8px;
}

.search-pop a{
	transition:background-color 0.15s linear;
}

.search-pop a:hover{
	background-color:var(--wp--preset--color--primary) !important;	
}

.search-pop.is-open a{
 background-color:var(--wp--preset--color--primary) !important;	
}


.archive-subcat > p {
	display:none;
}

.archive-subcat ul.lista-podkategorii{
	width:100%;
	margin:0;
	display:inline-flex;
	flex-wrap:wrap;
	gap:10px;
	padding:0;
}
.archive-subcat ul.lista-podkategorii li{
	list-style:none;
	padding:5px 15px;
	border-radius:12px;
	margin-left:0;
	background-color:#fff;
	box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.05);
	transition:background-color 0.15s linear;

}
.archive-subcat ul.lista-podkategorii li:hover{
background-color:var(--wp--preset--color--secondary);
}

.archive-subcat ul.lista-podkategorii li:hover a{
	color:#fff;
}

@media(max-width: 1024px){
	.post-grid-normal{
		gap:20px;
		
	}
	
	.archive-header{
		align-items:center;
	}
	.archive-header h1{
		text-align:center;
	}
	.subcat-list-title{
		align-self:center;
	}
	.archive-subcat ul.lista-podkategorii{
		justify-content:center;
	}
}

.author-wrap{
	flex-direction:row-reverse;
	gap:80px;
}

.author-wrap .wp-block-post-author__bio{
	font-size:1.6rem;
	font-weight:400;
}
.author-wrap .wp-block-post-author__avatar{
	margin-right:0;
}

.author-wrap .wp-block-post-author__avatar img{
	width:150px;
	height:150px;
	border-radius:12px;
}