:root{--shr-ink:#172033;--shr-muted:#667085;--shr-brand:var(--wp--preset--color--primary,var(--global-palette1,var(--ast-global-color-0,#06387a)));--shr-on-brand:var(--wp--preset--color--base,#fff);--shr-brand2:#0b63ce;--shr-bg:#f5f8fc;--shr-line:#dbe4f0;--shr-star:#f5a623;--shr-radius:18px}.shr-repository,.shr-product{color:var(--shr-ink);max-width:1180px;margin:40px auto}.shr-hero{background:var(--shr-brand);color:#fff;border-radius:24px;padding:clamp(28px,5vw,58px);display:flex;align-items:flex-end;justify-content:space-between;gap:30px;overflow:hidden;position:relative}.shr-hero:after{content:"";position:absolute;width:280px;height:280px;border:50px solid rgba(255,255,255,.07);border-radius:50%;right:-80px;top:-110px}.shr-hero h2{font-size:clamp(36px,6vw,68px);line-height:1;margin:8px 0 14px;color:#fff}.shr-hero p{max-width:650px;margin:0;color:#dcecff;font-size:17px}.shr-eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:800}.shr-hero-stat{position:relative;z-index:1;min-width:150px}.shr-hero-stat strong{font-size:34px;display:block}.shr-hero-stat span{font-size:13px;color:#dcecff}.shr-filters{display:grid;grid-template-columns:1fr 190px auto;gap:10px;margin:24px 0}.shr-filters input,.shr-filters select,.shr-rating-form input,.shr-rating-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--shr-line);border-radius:10px;padding:12px 14px;background:#fff;color:var(--shr-ink)}.shr-filters button,.shr-rating-form button,.shr-download,.shr-secondary-button{border:0;border-radius:10px;background:var(--shr-brand);color:#fff!important;padding:12px 20px;font-weight:750;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.shr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.shr-card{border:1px solid var(--shr-line);background:#fff;border-radius:var(--shr-radius);overflow:hidden;box-shadow:0 8px 30px rgba(24,43,74,.07);transition:.2s}.shr-card:hover{transform:translateY(-4px);box-shadow:0 16px 42px rgba(24,43,74,.13)}.shr-card-image{display:block;aspect-ratio:16/10;position:relative;background:var(--shr-bg);overflow:hidden}.shr-card-image img{width:100%;height:100%;object-fit:cover}.shr-placeholder{height:100%;display:grid;place-items:center;font-size:60px;color:var(--shr-brand)}.shr-type,.shr-type-static{display:inline-block;background:#e8f1ff;color:var(--shr-brand);border-radius:999px;padding:6px 11px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.shr-type{position:absolute;left:14px;top:14px;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.12)}.shr-card-body{padding:20px}.shr-card h3{font-size:27px;margin:0 0 8px}.shr-card h3 a,.shr-view{color:var(--shr-ink);text-decoration:none}.shr-card p{color:var(--shr-muted);font-size:14px;line-height:1.65;min-height:3.3em}.shr-card-meta{display:flex;align-items:center;gap:7px;color:var(--shr-muted);font-size:12px;border-top:1px solid var(--shr-line);padding-top:14px}.shr-download-count{margin-left:auto}.shr-view{font-weight:750;display:inline-block;margin-top:16px;color:var(--shr-brand)}.shr-stars{position:relative;display:inline-block;color:#d8dee8;letter-spacing:1px;line-height:1}.shr-stars:before{content:"★★★★★"}.shr-stars>span{position:absolute;left:0;top:0;overflow:hidden;color:var(--shr-star)}.shr-pagination{display:flex;gap:7px;justify-content:center;margin:32px}.shr-pagination a{padding:8px 13px;border:1px solid var(--shr-line);border-radius:8px;text-decoration:none}.shr-pagination .is-active{background:var(--shr-brand);color:#fff}.shr-empty{text-align:center;padding:70px 20px;background:var(--shr-bg);border-radius:var(--shr-radius)}.shr-product-top{background:var(--shr-bg);border:1px solid var(--shr-line);border-radius:var(--shr-radius);padding:24px;display:flex;justify-content:space-between;align-items:center;gap:20px}.shr-rating-line{margin-top:12px;color:var(--shr-muted)}.shr-download{font-size:17px}.shr-download small{opacity:.75}.shr-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--shr-line);border:1px solid var(--shr-line);border-radius:14px;overflow:hidden;margin:22px 0}.shr-facts div{padding:18px;background:#fff}.shr-facts span{display:block;font-size:12px;color:var(--shr-muted);margin-bottom:5px}.shr-description{font-size:17px;line-height:1.8}.shr-panel,.shr-rate{border:1px solid var(--shr-line);border-radius:var(--shr-radius);padding:25px;margin:24px 0}.shr-panel h2,.shr-rate h2{margin-top:0}.shr-panel li{margin:9px 0}.shr-rate{background:var(--shr-bg)}.shr-rating-form{display:grid;gap:14px}.shr-rating-form label{font-size:13px;font-weight:700}.shr-rating-form fieldset{border:0;padding:0;margin:0}.shr-star-input{display:flex;flex-direction:row-reverse;justify-content:flex-end}.shr-star-input input{position:absolute;opacity:0;pointer-events:none}.shr-star-input span{font-size:32px;color:#ccd3df;cursor:pointer}.shr-star-input label:hover span,.shr-star-input label:hover~label span,.shr-star-input input:checked~span,.shr-star-input label:has(input:checked)~label span{color:var(--shr-star)}.shr-form-message{font-weight:700}.shr-form-message.is-success{color:#147044}.shr-form-message.is-error{color:#b42318}.shr-summary{display:flex;gap:20px;flex-wrap:wrap}.shr-summary span{background:var(--shr-bg);border-radius:12px;padding:18px;min-width:140px}.shr-summary strong{display:block;font-size:30px;color:var(--shr-brand)}.shr-archive-shell{padding:0 20px}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}@media(max-width:850px){.shr-grid{grid-template-columns:repeat(2,1fr)}.shr-hero{align-items:flex-start;flex-direction:column}.shr-facts{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.shr-grid{grid-template-columns:1fr}.shr-filters{grid-template-columns:1fr}.shr-product-top{align-items:stretch;flex-direction:column}.shr-facts{grid-template-columns:1fr 1fr}.shr-repository,.shr-product{margin:20px auto}}

/* PluginShelf 1.0.2: cleaner catalogue cards and full-width product pages. */
.shr-card{display:flex;flex-direction:column}
.shr-card-body{display:flex;flex:1;flex-direction:column;padding:22px}
.shr-card h3{font-size:29px;line-height:1.15;margin:0 0 18px}
.shr-card-meta{align-items:flex-start;flex-wrap:wrap;justify-content:space-between;gap:10px 14px;margin-top:auto;padding:16px 0;border-top:1px solid var(--shr-line)}
.shr-card-rating{display:flex;align-items:center;gap:7px}
.shr-rating-count{color:#98a2b3}
.shr-download-count{margin-left:0;white-space:nowrap}
.shr-view{display:flex;align-items:center;justify-content:space-between;width:100%;box-sizing:border-box;margin-top:2px;padding:12px 15px;border:1px solid var(--shr-brand);border-radius:10px;color:var(--shr-brand);transition:.18s ease}
.shr-view:hover,.shr-view:focus{background:var(--shr-brand);color:#fff}
.shr-single-shell{width:100%!important;max-width:none!important;margin:0!important;padding:0 24px 70px!important;box-sizing:border-box}
.shr-single-entry{width:100%;max-width:1180px;margin:0 auto}
.shr-single-header{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(420px,1.35fr);align-items:center;gap:44px;padding:48px 0 32px}
.shr-single-heading h1{margin:18px 0 14px;color:var(--shr-ink);font-size:clamp(42px,6vw,76px);line-height:1}
.shr-single-heading p{margin:0;color:var(--shr-muted);font-size:17px;line-height:1.7}
.shr-back-link{display:inline-flex;align-items:center;gap:8px;color:var(--shr-brand);font-size:13px;font-weight:750;text-decoration:none}
.shr-single-banner{overflow:hidden;border:1px solid var(--shr-line);border-radius:20px;background:var(--shr-bg);box-shadow:0 16px 44px rgba(24,43,74,.11)}
.shr-single-banner img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.shr-single-content{width:100%}
.shr-single-content>.shr-product{max-width:none;margin:0}
@media(max-width:850px){.shr-single-header{grid-template-columns:1fr;gap:25px;padding-top:32px}.shr-single-heading{order:1}.shr-single-banner{order:2}.shr-card h3{font-size:26px}}
@media(max-width:560px){.shr-single-shell{padding-right:16px!important;padding-left:16px!important}.shr-single-header{padding-top:24px}.shr-single-heading h1{font-size:42px}.shr-card-meta{display:grid;grid-template-columns:1fr}.shr-download-count{margin-top:2px}}

/* PluginShelf 1.0.3: two-column catalogue and banner-first product profile. */
.shr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.shr-card h3{font-size:clamp(22px,2.2vw,30px);font-weight:700;letter-spacing:normal}
.shr-single-header{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:34px 0 0}
.shr-single-banner{order:1;width:100%;border-radius:20px}
.shr-single-banner img{width:100%;aspect-ratio:3/1;max-height:420px;object-fit:cover}
.shr-single-heading{order:2;padding:30px 4px 26px}
.shr-single-heading .shr-back-link{margin-bottom:22px}
.shr-single-heading .shr-type-static{margin-bottom:12px}
.shr-single-heading h1{max-width:850px;margin:0 0 12px;font-size:clamp(38px,5vw,62px)}
.shr-single-heading p{max-width:820px}
.shr-product-nav{display:flex;align-items:center;gap:28px;overflow-x:auto;margin:0 0 24px;padding:0 4px;border-bottom:1px solid var(--shr-line);scrollbar-width:thin}
.shr-product-nav a{flex:0 0 auto;padding:13px 2px 12px;border-bottom:3px solid transparent;color:var(--shr-muted);font-size:14px;font-weight:700;text-decoration:none}
.shr-product-nav a:hover,.shr-product-nav a:focus{border-bottom-color:var(--shr-brand);color:var(--shr-brand)}
.shr-action-label{display:block;margin-bottom:7px;color:var(--shr-muted);font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.shr-product-top{padding:22px 24px}
.shr-download{min-width:180px}
.shr-description,.shr-panel,.shr-rate{scroll-margin-top:30px}
@media(max-width:700px){.shr-grid{grid-template-columns:1fr}.shr-single-banner img{aspect-ratio:16/7}.shr-single-heading{padding-top:24px}.shr-product-nav{gap:20px}}

/* PluginShelf 1.0.4: editorial content with a product-information sidebar. */
.shr-product-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:46px}
.shr-product-main{min-width:0}
.shr-section-title{margin:0 0 20px;font-size:clamp(27px,3vw,36px);line-height:1.2}
.shr-product-main .shr-description{padding:8px 0 12px}
.shr-product-main .shr-panel{padding:28px 30px;background:#fff}
.shr-product-sidebar{display:grid;gap:18px;position:sticky;top:24px}
.shr-sidebar-card{overflow:hidden;padding:23px;border:1px solid var(--shr-line);border-radius:16px;background:#fff;box-shadow:0 10px 34px rgba(24,43,74,.07)}
.shr-sidebar-card h2{margin:0 0 17px;font-size:21px;line-height:1.25}
.shr-action-card{background:var(--shr-bg)}
.shr-action-card .shr-download{display:flex;width:100%;min-width:0;box-sizing:border-box;margin:7px 0 20px;padding:14px 17px;font-size:16px}
.shr-sidebar-rating{padding-top:18px;border-top:1px solid var(--shr-line)}
.shr-sidebar-rating .shr-rating-line{display:flex;align-items:center;gap:9px;margin:7px 0 4px}
.shr-sidebar-rating .shr-rating-line strong{color:var(--shr-ink);font-size:16px}
.shr-rating-total{color:var(--shr-muted);font-size:12px}
.shr-sidebar-facts{display:grid}
.shr-sidebar-facts>div{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--shr-line)}
.shr-sidebar-facts>div:first-child{padding-top:0}
.shr-sidebar-facts>div:last-child{border-bottom:0}
.shr-sidebar-facts span{color:var(--shr-muted);font-size:12px}
.shr-sidebar-facts strong{max-width:55%;color:var(--shr-ink);font-size:13px;text-align:right;overflow-wrap:anywhere}
.shr-sidebar-card .shr-secondary-button{display:flex;width:100%;box-sizing:border-box;margin-top:18px}
.shr-review-card{scroll-margin-top:24px}
.shr-review-card .shr-rate{margin:0;padding:0;border:0;background:transparent}
.shr-review-card .shr-rate h2{font-size:21px}
.shr-review-card .shr-rate>p{margin-top:-6px;color:var(--shr-muted);font-size:13px;line-height:1.55}
.shr-review-card .shr-star-input span{font-size:29px}
.shr-review-card .shr-rating-form{gap:12px}
.shr-review-card .shr-rating-form button{width:100%}
@media(max-width:960px){.shr-product-layout{grid-template-columns:minmax(0,1fr) 310px;gap:28px}}
@media(max-width:780px){.shr-product-layout{grid-template-columns:1fr}.shr-product-sidebar{position:static}.shr-product-main .shr-panel{padding:22px}.shr-sidebar-card{padding:21px}}

/* PluginShelf 1.0.5: theme-aware, two-row repository header. */
.shr-hero{display:block;box-sizing:border-box;width:100%;padding:clamp(30px,5vw,58px);background:var(--shr-brand);color:var(--shr-on-brand)}
.shr-hero:after{border-color:color-mix(in srgb,var(--shr-on-brand) 9%,transparent)}
.shr-hero-title{position:relative;z-index:1;width:100%}
.shr-hero-title .shr-eyebrow{display:block;color:var(--shr-on-brand);opacity:.82}
.shr-hero-title h2{width:100%;max-width:none;margin:10px 0 0;color:var(--shr-on-brand);font-size:clamp(38px,6vw,72px);line-height:1.04;letter-spacing:normal}
.shr-hero-row{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,250px);gap:16px;margin-top:34px}
.shr-hero-copy,.shr-hero-stat{display:flex;min-height:92px;box-sizing:border-box;border:1px solid color-mix(in srgb,var(--shr-on-brand) 17%,transparent);border-radius:14px;background:color-mix(in srgb,var(--shr-on-brand) 9%,transparent)}
.shr-hero-copy{align-items:center;padding:21px 24px}
.shr-hero-copy p{max-width:850px;margin:0;color:var(--shr-on-brand);font-size:clamp(15px,1.5vw,18px);line-height:1.65;opacity:.92}
.shr-hero-stat{align-items:flex-start;justify-content:center;flex-direction:column;min-width:0;padding:18px 22px}
.shr-hero-stat strong{color:var(--shr-on-brand);font-size:34px;line-height:1}
.shr-hero-stat span{margin-top:8px;color:var(--shr-on-brand);font-size:12px;font-weight:650;opacity:.82}
@media(max-width:680px){.shr-hero-row{grid-template-columns:1fr}.shr-hero-copy,.shr-hero-stat{min-height:auto}.shr-hero-stat{align-items:center;text-align:center}.shr-hero-title h2{font-size:clamp(36px,12vw,54px)}}

/* PluginShelf 1.0.6: connect generated titles to theme/Elementor heading typography. */
.shr-repository .shr-hero-title h2,
.shr-repository .shr-card h3,
.shr-repository .shr-card h3 a{
	font-family:var(--wp--preset--font-family--heading,var(--e-global-typography-primary-font-family,var(--global-heading-font-family)))!important;
}

/* PluginShelf 1.0.7: unrestrained product titles and visible active section. */
.shr-repository .shr-card h3,
.shr-repository .shr-card h3 a{
	display:block!important;
	width:100%!important;
	max-width:none!important;
	white-space:normal!important;
	overflow:visible!important;
	text-overflow:clip!important;
	-webkit-line-clamp:unset!important;
	line-clamp:unset!important;
	overflow-wrap:anywhere;
}
.shr-single-heading h1{width:100%;max-width:none!important;white-space:normal;overflow-wrap:anywhere}
.shr-product-nav a.is-active,.shr-product-nav a[aria-current="page"]{border-bottom-color:var(--shr-brand);color:var(--shr-brand)}

/* PluginShelf 1.0.8: accessible content-switching tabs. */
.shr-product-nav button{
	flex:0 0 auto;
	appearance:none;
	margin:0;
	padding:13px 2px 12px;
	border:0;
	border-bottom:3px solid transparent;
	border-radius:0;
	background:transparent;
	box-shadow:none;
	color:var(--shr-muted);
	font:inherit;
	font-size:14px;
	font-weight:700;
	line-height:1.4;
	cursor:pointer;
}
.shr-product-nav button:hover,
.shr-product-nav button:focus-visible,
.shr-product-nav button.is-active,
.shr-product-nav button[aria-selected="true"]{border-bottom-color:var(--shr-brand);background:transparent;color:var(--shr-brand)}
.shr-product-nav button:focus-visible{outline:2px solid var(--shr-brand);outline-offset:3px}
.shr-tab-panel[hidden],
[data-shr-sidebar-panel][hidden]{display:none!important}
.shr-tab-panel{min-width:0;animation:shr-tab-in .18s ease}
.shr-tab-panel .shr-panel{margin-top:0}
.shr-reviews-panel{padding:8px 0}
.shr-review-list{display:grid;gap:14px}
.shr-review-item{padding:20px;border:1px solid var(--shr-line);border-radius:14px;background:#fff}
.shr-review-head{display:flex;align-items:center;justify-content:space-between;gap:18px}
.shr-review-item p{margin:13px 0;color:var(--shr-ink);line-height:1.7}
.shr-review-item time{color:var(--shr-muted);font-size:12px}
.shr-no-reviews{padding:25px;border:1px dashed var(--shr-line);border-radius:14px;background:var(--shr-bg);color:var(--shr-muted)}
.shr-no-reviews p{margin:0}
@keyframes shr-tab-in{from{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.shr-tab-panel{animation:none}}
