.spcs-wrap{--spcs-accent:#e53935;--spcs-title:#2c3e50;--spcs-border:#e5e7eb;box-sizing:border-box;width:100%;margin:2rem 0;color:#374151}.spcs-wrap *{box-sizing:border-box}.spcs-section-title{margin:0 0 1.15rem;color:var(--spcs-title);font-size:clamp(1.45rem,2.2vw,2rem);line-height:1.2;text-transform:none}.spcs-track{display:grid;grid-template-columns:repeat(var(--spcs-cols,3),minmax(0,1fr));gap:1.25rem}.spcs-cols-1{--spcs-cols:1}.spcs-cols-2{--spcs-cols:2}.spcs-cols-3{--spcs-cols:3}.spcs-cols-4{--spcs-cols:4}.spcs-card{overflow:hidden;margin:0;border:1px solid var(--spcs-border);border-radius:8px;background:#fff;box-shadow:0 1px 2px rgba(17,24,39,.04)}.spcs-thumb{display:block;overflow:hidden;aspect-ratio:16/9;background:#f3f4f6}.spcs-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.spcs-card:hover .spcs-thumb img{transform:scale(1.025)}.spcs-card-body{padding:1rem 1rem 1.1rem}.spcs-card-title{margin:.35rem 0 .5rem!important;font-size:1.2rem!important;line-height:1.28!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important}.spcs-card-title a{color:var(--spcs-title)!important;text-decoration:none}.spcs-card-title a:hover,.spcs-card-title a:focus{color:var(--spcs-accent)!important}.spcs-meta{display:flex;flex-wrap:wrap;gap:.35rem .7rem;margin:.15rem 0 .65rem;color:#6b7280;font-size:.82rem;line-height:1.4}.spcs-excerpt{margin:.55rem 0 .85rem;font-size:.96rem;line-height:1.6;color:#4b5563}.spcs-tax{display:flex;flex-wrap:wrap;gap:.35rem}.spcs-tax a{text-decoration:none}.spcs-categories a{color:var(--spcs-accent);font-size:.78rem;font-weight:600}.spcs-tags{margin:.75rem 0 .15rem}.spcs-tags a{padding:.18rem .42rem;border-radius:999px;background:#f3f4f6;color:#4b5563;font-size:.75rem}.spcs-read-more{display:inline-block;margin-top:.6rem;color:var(--spcs-accent)!important;font-size:.9rem;font-weight:600;text-decoration:none!important}.spcs-layout-list .spcs-track{grid-template-columns:1fr}.spcs-layout-list .spcs-card{display:grid;grid-template-columns:minmax(160px,28%) 1fr}.spcs-layout-list .spcs-thumb{height:100%;min-height:150px;aspect-ratio:auto}.spcs-carousel-shell{position:relative;padding:0 2.4rem}.spcs-layout-carousel .spcs-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--spcs-cols) - 1)*1.25rem)/var(--spcs-cols));grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}.spcs-layout-carousel .spcs-track::-webkit-scrollbar{display:none}.spcs-layout-carousel .spcs-card{scroll-snap-align:start}.spcs-nav{position:absolute;top:50%;z-index:2;display:grid;place-items:center;width:34px;height:48px;margin-top:-24px;border:1px solid var(--spcs-border);border-radius:6px;background:#fff;color:var(--spcs-title);font-size:2rem;line-height:1;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.08)}.spcs-nav:hover,.spcs-nav:focus{border-color:var(--spcs-accent);color:var(--spcs-accent);outline:none}.spcs-prev{left:0}.spcs-next{right:0}.spcs-empty{margin:1rem 0;padding:1rem;border:1px solid #e5e7eb;border-radius:6px;background:#f9fafb;color:#6b7280}.spcs-term-list{display:flex;flex-wrap:wrap;gap:.55rem}.spcs-term{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .7rem;border:1px solid var(--spcs-border);border-radius:999px;background:#fff;color:var(--spcs-title)!important;font-size:.9rem;text-decoration:none!important}.spcs-term:hover,.spcs-term:focus{border-color:var(--spcs-accent);color:var(--spcs-accent)!important}.spcs-term span{display:inline-grid;place-items:center;min-width:1.3rem;height:1.3rem;border-radius:999px;background:#f3f4f6;font-size:.72rem}@media(max-width:900px){.spcs-cols-3,.spcs-cols-4{--spcs-cols:2}.spcs-layout-list .spcs-card{grid-template-columns:minmax(140px,34%) 1fr}}@media(max-width:640px){.spcs-wrap{margin:1.5rem 0}.spcs-cols-2,.spcs-cols-3,.spcs-cols-4{--spcs-cols:1}.spcs-layout-list .spcs-card{display:block}.spcs-layout-list .spcs-thumb{min-height:0;aspect-ratio:16/9}.spcs-carousel-shell{padding:0 1.9rem}.spcs-layout-carousel .spcs-track{grid-auto-columns:100%}.spcs-card-body{padding:.9rem}.spcs-card-title{font-size:1.1rem!important}}

/* Presentation presets - v1.2.0 */
.spcs-preset-image .spcs-card{border:0;background:transparent;box-shadow:none}.spcs-preset-image .spcs-thumb{border-radius:8px}.spcs-preset-text .spcs-card{grid-template-columns:1fr!important}.spcs-preset-title .spcs-track{gap:.35rem}.spcs-preset-title .spcs-card{border:0;border-bottom:1px solid var(--spcs-border);border-radius:0;box-shadow:none}.spcs-preset-title .spcs-card-body{padding:.55rem 0}.spcs-preset-title .spcs-card-title{margin:0!important;font-size:1.05rem!important;line-height:1.35!important}.spcs-preset-title_description .spcs-card{border-radius:6px}.spcs-preset-title_description .spcs-card-title{margin-top:0!important}.spcs-preset-title_description .spcs-excerpt{margin-bottom:0}.spcs-source-rss .spcs-source-name,.spcs-source-wprss .spcs-source-name,.spcs-source-wprss_posts .spcs-source-name{font-weight:600}

/* Automatic related posts */
.spcs-auto-related{clear:both;margin-top:2.5rem;padding-top:.25rem}.spcs-auto-related .spcs-wrap{margin-bottom:0}


/* Theme-adaptive layout - v1.2.1
   The plugin follows the real width of the WordPress/theme container where
   it is inserted. This also neutralizes legacy theme rules that can impose
   fixed widths/floats on headings or article elements. */
.spcs-wrap{
	width:100%!important;
	max-width:100%!important;
	min-width:0!important;
	margin-left:0!important;
	margin-right:0!important;
	float:none!important;
	clear:both;
	container-type:inline-size;
	container-name:spcs;
}
.spcs-wrap .spcs-track,
.spcs-wrap .spcs-card,
.spcs-wrap .spcs-card-body,
.spcs-wrap .spcs-card-title,
.spcs-wrap .spcs-card-title a,
.spcs-wrap .spcs-excerpt{
	box-sizing:border-box!important;
	min-width:0!important;
	max-width:100%!important;
}
.spcs-wrap .spcs-track,
.spcs-wrap .spcs-card,
.spcs-wrap .spcs-card-body{
	width:100%!important;
	float:none!important;
}
.spcs-wrap .spcs-card-title{
	display:block!important;
	width:100%!important;
	float:none!important;
	position:static!important;
	left:auto!important;
	right:auto!important;
	height:auto!important;
	min-height:0!important;
	white-space:normal!important;
	overflow:visible!important;
	overflow-wrap:anywhere;
	word-break:normal;
	hyphens:auto;
}
.spcs-wrap .spcs-card-title a{
	display:block!important;
	width:100%!important;
	white-space:normal!important;
	overflow-wrap:anywhere;
	word-break:normal;
}
.spcs-wrap .spcs-excerpt{
	width:100%!important;
	white-space:normal!important;
	overflow-wrap:anywhere;
}
.spcs-wrap img{
	max-width:100%!important;
	height:auto;
}

/* Compact title-only presentation: use the entire available theme width. */
.spcs-preset-title .spcs-track{
	display:block!important;
	width:100%!important;
}
.spcs-preset-title .spcs-card{
	display:block!important;
	width:100%!important;
	height:auto!important;
	min-height:0!important;
	margin:0!important;
	padding:0!important;
	border-left:0!important;
	border-right:0!important;
	border-top:0!important;
	border-radius:0!important;
	box-shadow:none!important;
}
.spcs-preset-title .spcs-card + .spcs-card{
	margin-top:.35rem!important;
}
.spcs-preset-title .spcs-card-body{
	display:block!important;
	width:100%!important;
	height:auto!important;
	min-height:0!important;
	padding:.72rem .9rem!important;
}
.spcs-preset-title .spcs-card-title{
	width:100%!important;
	max-width:none!important;
	margin:0!important;
	padding:0!important;
	font-size:clamp(15px,1.05rem,18px)!important;
	line-height:1.38!important;
}

/* Title + description also follows the parent column cleanly. */
.spcs-preset-title_description .spcs-card,
.spcs-preset-title_description .spcs-card-body{
	min-width:0!important;
	max-width:100%!important;
}
.spcs-preset-title_description .spcs-card-title,
.spcs-preset-title_description .spcs-excerpt{
	width:100%!important;
	max-width:100%!important;
}

/* Container queries react to the plugin's real space. This matters when it is
   used inside sidebars, theme columns, tabs or page-builder rows on desktop. */
@container spcs (max-width: 860px){
	.spcs-cols-3,.spcs-cols-4{--spcs-cols:2}
	.spcs-layout-list .spcs-card{grid-template-columns:minmax(130px,34%) minmax(0,1fr)}
}
@container spcs (max-width: 560px){
	.spcs-cols-2,.spcs-cols-3,.spcs-cols-4{--spcs-cols:1}
	.spcs-layout-list .spcs-card{display:block!important}
	.spcs-layout-list .spcs-thumb{min-height:0;aspect-ratio:16/9}
	.spcs-carousel-shell{padding:0 1.8rem}
	.spcs-layout-carousel .spcs-track{grid-auto-columns:100%}
	.spcs-preset-title .spcs-card-body{padding:.65rem .7rem!important}
	.spcs-preset-title .spcs-card-title{font-size:15px!important;line-height:1.4!important}
}

/* Fallback for browsers without container query support. */
@supports not (container-type:inline-size){
	.spcs-wrap{overflow:hidden}
	.spcs-track{max-width:100%!important}
}
