/*
Theme Name: Entrace
Theme URI: https://gawibowo.com/themes/entrace
Author: gawibowo
Author URI: https://gawibowo.com
Description: Modern responsive magazine and blog theme with full-site editing support, flexible layouts, and editorial styling. See the theme demo at https://wp.gawibowo.com/entrace/
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 7.4
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: entrace
Tags: blog, news, full-site-editing, block-patterns, block-styles, style-variations, editor-style, featured-images, custom-logo, custom-menu, wide-blocks, rtl-language-support, threaded-comments, translation-ready, grid-layout, one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar

Entrace WordPress Theme, (C) 2026 gawibowo
Entrace is distributed under the terms of the GNU GPL.

This theme bundles Bootstrap Icons (MIT) and the Open Sans typeface
(SIL Open Font License 1.1). See readme.txt for full credits.
*/

.wp-block-search.is-style-widget .wp-block-search__button {
	padding: 1em;
	margin: -2px;
}

.wp-block-search.is-style-widget .wp-block-search__input {
	padding-block: 0;
	padding-inline: 8px;
}

.wp-block-search.is-style-widget .wp-block-search__inside-wrapper {
	padding: 0;
}

.wp-block-social-links.is-style-square .wp-block-social-link {
	border-radius: 0;
}

.wp-block-social-links.is-style-square .wp-social-link a {
	padding: 0.45em;
}

.wp-block-social-links .wp-block-social-link {
	opacity: 0.8;
}

.wp-block-social-links .wp-block-social-link:hover {
	opacity: 1;
}

.wp-block-heading.is-style-widget {
	text-transform: uppercase;
	padding-block-end: 12px;
	margin-block-end: 30px;
	border-block-end: 1px solid var(--wp--preset--color--contrast-d);
	font-size: var(--wp--preset--font-size--medium);
	position: relative;
}

.wp-block-heading.is-style-widget::before {
	content: "";
	position: absolute;
	inset-block-end: -1px;
	width: 100px;
	border-block-end: 1px solid var(--wp--preset--color--accent);
}

.wp-block-categories-list {
	list-style: none;
	padding-inline-start: 0;
}

.wp-block-categories-list ul {
	list-style: none;
	padding-inline-start: 1em;
}

.wp-block-categories-list li {
	margin-block-start: 0.5em;
}

.entrace-cat-count {
	font-size: var(--wp--preset--font-size--x-small);
}

.wp-block-latest-posts.wp-block-latest-posts__list li {
	display: flow-root;
	margin-block-start: 0.7em;
}

.icon {
	display: inline-block;
	width: 1em;
	height: 1em;
	fill: currentcolor;
	vertical-align: middle;
	margin-inline-end: 2px;
}

.fp-meta .icon {
	vertical-align: -2px;
}

.block-more {
	font-size: var(--wp--preset--font-size--x-small);
}

.block-more a {
	color: var(--wp--preset--color--contrast-9);
}

.block-more a:hover {
	color: var(--wp--preset--color--accent);
}

[class*="widget_flex-posts"] .fp-header {
	margin-block-end: 30px;
	align-items: center;
	justify-content: space-between;
}

[class*="widget_flex-posts"] .fp-header .widget-title {
	margin-block: 0;
}

[class*="widget_flex-posts"] .widget-title {
	font-size: var(--wp--preset--font-size--small);
	text-transform: uppercase;
}

[class*="widget_flex-posts"] .widget-title a {
	color: var(--wp--preset--color--contrast);
}

[class*="widget_flex-posts"] .widget-title a:hover {
	color: var(--wp--preset--color--accent);
}

[class*="wp-block-flex-posts-"].is-style-filled .widget-title {
	position: relative;
	background-color: var(--wp--preset--color--accent);
	color: #fff;
}

[class*="wp-block-flex-posts-"].is-style-filled .widget-title > span {
	display: block;
	padding: 8px 12px;
}

[class*="wp-block-flex-posts-"].is-style-filled .widget-title a {
	display: block;
	padding-block: 8px;
	padding-inline: 12px 47px;
	color: #fff;
	transition: all 0.1s linear 0s;
}

[class*="wp-block-flex-posts-"].is-style-filled .widget-title a:hover {
	background-color: rgba(0, 0, 0, 0.2);
}

[class*="wp-block-flex-posts-"].is-style-filled .widget-title a::after {
	content: "";
	position: absolute;
	inset-block-start: 0;
	inset-inline-end: 0;
	background-color: rgba(0, 0, 0, 0.1);
	height: 100%;
	width: 35px;
}

[class*="wp-block-flex-posts-"].is-style-filled .widget-title a::before {
	content: "";
	position: absolute;
	box-sizing: border-box;
	inset-block-start: 50%;
	inset-inline-end: 16px;
	width: 8px;
	height: 8px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: translateY(-50%) rotate(45deg);
	z-index: 1;
}

[dir="rtl"] [class*="wp-block-flex-posts-"].is-style-filled .widget-title a::before {
	transform: translateY(-50%) rotate(135deg);
}

[class*="wp-block-flex-posts-"].is-style-filled .widget-title:not(:has(> span, > a)) {
	padding: 8px 12px;
}

[class*="wp-block-flex-posts-"].is-style-underline .fp-header {
	border-block-end: 1px solid var(--wp--preset--color--contrast-e);
}

[class*="wp-block-flex-posts-"].is-style-underline .widget-title {
	padding-block-end: 12px;
	border-block-end: 1px solid var(--wp--preset--color--accent);
	margin-block-end: -1px;
}

.fp-post .fp-title a:hover,
.fp-post .fp-meta a:hover {
	color: var(--wp--preset--color--accent);
}

.fp-post .fp-meta a {
	opacity: 1;
	color: var(--wp--preset--color--contrast-9);
}

.fp-thumbnail {
	overflow: hidden;
	border-block-end: 5px solid var(--wp--preset--color--contrast-e);
	transition: all 1s ease 0s;
}

.fp-list-1 .fp-thumbnail,
.fp-extra .fp-thumbnail {
	border: none;
}

.fp-thumbnail img {
	height: 100%;
	transition: all 1s ease 0s;
}

.fp-list-4 .fp-thumbnail img,
.fp-list-6 .fp-thumbnail img {
	height: auto;
	object-fit: cover;
}

.fp-list-4 .fp-thumbnail img {
	aspect-ratio: 32 / 19;
}

.fp-list-6 .fp-thumbnail img {
	aspect-ratio: 4 / 3;
}

.fp-thumbnail:hover {
	border-block-end-color: var(--wp--preset--color--accent);
}

.fp-thumbnail:hover img {
	transform: scale(1.2);
}

@media (min-width: 600px) {

	.wp-block-navigation.is-style-main-menu .wp-block-navigation__submenu-container {
		border: none;
		text-transform: none;
		font-weight: 400;
	}

	.wp-block-navigation.is-style-main-menu .wp-block-navigation__container {
		gap: 5px;
	}

	.wp-block-navigation.is-style-main-menu .wp-block-navigation__container > li,
	.wp-block-navigation.is-style-main-menu .wp-block-navigation__container > .wp-block-page-list > li {
		padding: 10px 14px;
	}

	.wp-block-navigation.is-style-main-menu .wp-block-navigation__container > li:hover,
	.wp-block-navigation.is-style-main-menu .wp-block-navigation__container > li.current-menu-item,
	.wp-block-navigation.is-style-main-menu .wp-block-navigation__container > li.current-menu-ancestor,
	.wp-block-navigation.is-style-main-menu .wp-block-navigation__container > .wp-block-page-list > li:hover,
	.wp-block-navigation.is-style-main-menu .wp-block-navigation__container > .wp-block-page-list > li.current-menu-item,
	.wp-block-navigation.is-style-main-menu .wp-block-navigation__container > .wp-block-page-list > li.current-menu-ancestor {
		color: #fff;
		background-color: var(--wp--preset--color--accent);
	}

	.wp-block-navigation.is-style-main-menu .wp-block-navigation__container > li > .wp-block-navigation__submenu-container,
	.wp-block-navigation.is-style-main-menu .wp-block-navigation__container > .wp-block-page-list > li > .wp-block-navigation__submenu-container {
		inset-inline-start: 0;
	}

	.wp-block-navigation.is-style-main-menu li li.wp-block-navigation-item:hover > a,
	.wp-block-navigation.is-style-main-menu li li.wp-block-navigation-item.current-menu-item > a {
		background-color: rgba(0, 0, 0, 0.2);
	}

	.wp-block-navigation.is-style-main-menu .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon {
		position: absolute;
		inset-inline-end: 0.25em;
	}
}

.entry-image {
	position: relative;
}

.entry-image .taxonomy-category {
	position: absolute;
	inset-block-start: 0;
	inset-inline-start: 0;
	margin: 0;
}

.entry-image .taxonomy-category a {
	color: #fff;
	background-color: var(--wp--preset--color--accent);
	display: inline-block;
	font-size: var(--wp--preset--font-size--xx-small);
	padding: 3px 6px;
	margin-inline-end: 0;
}

.entry-image:not(:has(.wp-block-post-featured-image)) .taxonomy-category {
	display: none;
}

.entry-image .taxonomy-category a:not(:first-of-type),
.entry-image .wp-block-post-terms__separator {
	display: none;
}

.featured-posts > :nth-child(1) {
	grid-column: 1 / 3;
	grid-row: 1 / 3;
}

.featured-posts > :nth-child(2) {
	grid-column: 3;
	grid-row: 1;
}

@media (max-width: 781px) {

	.featured-posts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.featured-posts > :nth-child(2) {
		grid-column: 1;
		grid-row: 3;
	}
}

.featured-posts > :nth-child(n+2) .taxonomy-category {
	display: none;
}

.featured-posts > :nth-child(n+2) .wp-block-post-title {
	font-size: 1rem;
}

.featured-posts .wp-block-post {
	position: relative;
	overflow: hidden;
}

.featured-posts img {
	transition: all 1s ease 0s;
}

.featured-posts .wp-block-post:hover img {
	transform: scale(1.2);
}

.featured-posts .wp-block-group .wp-block-group {
	position: absolute;
	inset-block-end: 0;
	width: 100%;
}

.featured-posts .taxonomy-category a {
	color: #fff;
	background-color: var(--wp--preset--color--accent);
	display: inline-block;
	font-size: var(--wp--preset--font-size--xx-small);
	padding: 2px 6px;
}

.wp-block-query .wp-block-post-featured-image {
	overflow: hidden;
}

.wp-block-query .wp-block-post-featured-image a img {
	transition: all 1s ease 0s;
}

.wp-block-query .wp-block-post-featured-image a:hover img {
	transform: scale(1.2);
}

.wp-block-query-pagination .page-numbers,
.wp-block-query-pagination-previous,
.wp-block-query-pagination-next {
	color: var(--wp--preset--color--contrast-5);
	padding: 4px 10px;
}

.wp-block-query-pagination a.page-numbers {
	background-color: var(--wp--preset--color--contrast-e);
}

.wp-block-query-pagination a.page-numbers:hover,
.wp-block-query-pagination .page-numbers.current {
	color: var(--wp--preset--color--base);
	background-color: var(--wp--preset--color--accent);
}

.wp-block-query-pagination .page-numbers.dots {
	color: var(--wp--preset--color--contrast-9);
}

.wp-block-query-pagination-previous:hover,
.wp-block-query-pagination-next:hover {
	color: var(--wp--preset--color--accent);
}

@media (prefers-reduced-motion: reduce) {

	.fp-thumbnail,
	.fp-thumbnail img,
	.featured-posts img,
	.wp-block-query .wp-block-post-featured-image a img,
	[class*="wp-block-flex-posts-"].is-style-filled .widget-title a {
		transition: none;
	}

	.fp-thumbnail:hover img,
	.featured-posts .wp-block-post:hover img,
	.wp-block-query .wp-block-post-featured-image a:hover img {
		transform: none;
	}
}

.wp-block-post-template.is-style-masonry-2,
.wp-block-post-template.is-style-masonry-3,
.wp-block-post-template.is-style-masonry-4 {
	display: block;
	column-gap: var(--wp--style--block-gap, 1.5rem);
}

.wp-block-post-template.is-style-masonry-2 > li,
.wp-block-post-template.is-style-masonry-3 > li,
.wp-block-post-template.is-style-masonry-4 > li {
	display: block;
	break-inside: avoid;
	-webkit-column-break-inside: avoid;
	margin-block-start: 0;
	margin-block-end: var(--wp--style--block-gap, 1.5rem);
}

.wp-block-post-template.is-style-masonry-2 {
	column-count: 2;
}

.wp-block-post-template.is-style-masonry-3 {
	column-count: 3;
}

.wp-block-post-template.is-style-masonry-4 {
	column-count: 4;
}

@media (max-width: 1023px) {

	.wp-block-post-template.is-style-masonry-3,
	.wp-block-post-template.is-style-masonry-4 {
		column-count: 2;
	}
}

@media (max-width: 599px) {

	.wp-block-post-template.is-style-masonry-2,
	.wp-block-post-template.is-style-masonry-3,
	.wp-block-post-template.is-style-masonry-4 {
		column-count: 1;
	}
}

.wp-block-post-template.has-js-masonry {
	column-count: auto;
}

.wp-block-post-template.has-js-masonry > li {
	margin-block-end: var(--wp--style--block-gap, 1.5rem);
}

.wp-block-post-template.is-style-masonry-2.has-js-masonry > li {
	width: calc((100% - var(--wp--style--block-gap, 1.5rem)) / 2);
}

.wp-block-post-template.is-style-masonry-3.has-js-masonry > li {
	width: calc((100% - (2 * var(--wp--style--block-gap, 1.5rem))) / 3);
}

.wp-block-post-template.is-style-masonry-4.has-js-masonry > li {
	width: calc((100% - (3 * var(--wp--style--block-gap, 1.5rem))) / 4);
}

@media (max-width: 1023px) {

	.wp-block-post-template.is-style-masonry-3.has-js-masonry > li,
	.wp-block-post-template.is-style-masonry-4.has-js-masonry > li {
		width: calc((100% - var(--wp--style--block-gap, 1.5rem)) / 2);
	}
}

@media (max-width: 599px) {

	.wp-block-post-template.is-style-masonry-2.has-js-masonry > li,
	.wp-block-post-template.is-style-masonry-3.has-js-masonry > li,
	.wp-block-post-template.is-style-masonry-4.has-js-masonry > li {
		width: 100%;
	}
}
