/* Single Product — UMKM Enterprise Polish v2 (replaces inline styles) */

/* Layout: 1.15fr gallery + 0.95fr summary, sticky summary */
.irhyt-product-layout--v2{
	display:grid;
	grid-template-columns:1.15fr 0.95fr;
	gap:var(--space-60);
	align-items:start;
}
@media(max-width:960px){
	.irhyt-product-layout--v2{grid-template-columns:1fr;gap:var(--space-40);}
}

/* Gallery */
.irhyt-product-gallery{
	position:sticky;
	top:calc(var(--header-height) + 16px);
	align-self:start;
}
@media(max-width:960px){ .irhyt-product-gallery{position:static;} }

.irhyt-product-gallery__main{
	position:relative;
	background:var(--color-surface-elevated);
	border:1px solid var(--color-border);
	border-radius:var(--radius-xl);
	overflow:hidden;
	aspect-ratio:1/1;
	display:grid;
	place-items:center;
	box-shadow:var(--shadow-subtle);
}
.irhyt-gallery-main-img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
	transition:transform var(--transition-smooth);
}
.irhyt-product-gallery__main:hover .irhyt-gallery-main-img{transform:scale(1.02);}
.irhyt-gallery-placeholder{
	width:100%;height:100%;display:grid;place-items:center;gap:8px;
	background:var(--color-surface);color:var(--color-muted);
	text-align:center;padding:var(--space-40);
}
.irhyt-gallery-placeholder span:first-child{font-size:40px;}
.irhyt-gallery-placeholder span:last-child{font-size:var(--text-sm);}

.irhyt-gallery-badge{
	position:absolute;top:14px;left:14px;
	font-size:var(--text-xs);font-weight:700;
	padding:6px 10px;border-radius:var(--radius-pill);
	letter-spacing:0.04em;line-height:1;
	z-index:2;
	box-shadow:var(--shadow-soft);
}
.irhyt-gallery-badge--sale{background:var(--color-accent);color:#fff;}
.irhyt-gallery-badge--featured{background:var(--color-success);color:#fff;top:14px;left:14px;}
.irhyt-gallery-badge--oos{
	left:auto;right:14px;
	background:var(--color-ink);color:var(--color-base);
	border:1px solid var(--color-border);
}
.irhyt-gallery-badge--sale + .irhyt-gallery-badge--featured{top:46px;}

.irhyt-gallery-zoom{
	position:absolute;right:14px;bottom:14px;
	width:40px;height:40px;border-radius:var(--radius-pill);
	background:var(--color-surface-elevated);border:1px solid var(--color-border);
	color:var(--color-ink-secondary);display:grid;place-items:center;
	cursor:pointer;box-shadow:var(--shadow-subtle);
	transition:var(--transition-fast);
}
.irhyt-gallery-zoom:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-1px);}

.irhyt-gallery-thumbs{
	display:grid;grid-template-columns:repeat(4,1fr);gap:10px;
	margin-top:14px;
}
@media(max-width:480px){ .irhyt-gallery-thumbs{grid-template-columns:repeat(4,1fr);gap:8px;} }

.irhyt-gallery-thumb{
	aspect-ratio:1/1;border-radius:var(--radius-md);
	overflow:hidden;border:1.5px solid var(--color-border);
	background:var(--color-surface);padding:0;cursor:pointer;
	transition:var(--transition-fast);
	position:relative;
}
.irhyt-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.irhyt-gallery-thumb:hover{border-color:var(--color-border-strong);transform:translateY(-1px);}
.irhyt-gallery-thumb.is-active{
	border-color:var(--color-primary);
	box-shadow:0 0 0 3px var(--color-primary-alpha);
}

/* Summary */
.irhyt-product-summary{
	min-width:0;
	position:sticky;top:calc(var(--header-height) + 16px);
}
@media(max-width:960px){ .irhyt-product-summary{position:static;} }

.irhyt-product-cat-badge{
	display:inline-flex;align-items:center;
	font-size:var(--text-xs);font-weight:700;letter-spacing:0.06em;text-transform:uppercase;
	color:var(--color-primary);background:var(--color-primary-alpha);
	border:1px solid var(--color-primary-alpha);
	padding:6px 12px;border-radius:var(--radius-pill);
	margin-bottom:14px;text-decoration:none;
	transition:var(--transition-fast);
}
.irhyt-product-cat-badge:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);}

.irhyt-product-title--v2{
	font-size:clamp(22px,3vw,32px);line-height:1.15;
	letter-spacing:var(--tracking-tight);font-weight:800;
	margin:0 0 12px;color:var(--color-ink);
}

.irhyt-product-meta-row{
	display:flex;flex-wrap:wrap;align-items:center;gap:10px;
	font-size:var(--text-sm);color:var(--color-muted);
	margin-bottom:14px;
}
.irhyt-product-rating{display:inline-flex;align-items:center;gap:8px;color:var(--color-accent);text-decoration:none;font-weight:600;}
.irhyt-product-rating:hover{color:var(--color-accent-hover);}
.irhyt-rating-stars{letter-spacing:0.04em;}
.irhyt-rating-count{color:var(--color-muted);font-weight:500;font-size:var(--text-xs);}
.irhyt-meta-dot{opacity:0.4;}
.irhyt-stock-badge{
	display:inline-flex;align-items:center;gap:6px;
	font-size:var(--text-xs);font-weight:700;
	padding:6px 10px;border-radius:var(--radius-pill);
	border:1px solid transparent;
}
.irhyt-stock-badge.is-in{background:var(--color-success-alpha);color:var(--color-success);border-color:var(--color-success-alpha);}
.irhyt-stock-badge.is-out{background:var(--status-danger-alpha);color:var(--status-danger);border-color:var(--status-danger-alpha);}
.irhyt-stock-badge .pulse-dot{background:currentColor;animation:none;}
.irhyt-sku-inline{font-size:var(--text-xs);color:var(--color-muted);font-family:var(--font-mono);}

.irhyt-product-price-block{
	display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;
	padding:14px 16px;background:var(--color-surface);border:1px solid var(--color-border);
	border-radius:var(--radius-lg);margin-bottom:18px;
}
.irhyt-product-price--v2{font-size:28px;line-height:1;margin:0 !important;color:var(--color-ink);}
.irhyt-product-price--v2 ins{text-decoration:none;color:var(--color-ink);font-weight:800;}
.irhyt-product-price--v2 del{font-size:14px;color:var(--color-muted);font-weight:400;margin-left:8px;}
.irhyt-price-save{
	font-size:var(--text-xs);font-weight:800;letter-spacing:0.04em;
	background:var(--color-accent);color:#fff;padding:6px 10px;border-radius:var(--radius-pill);
}

.irhyt-product-short--v2{
	color:var(--color-ink-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed);
	margin-bottom:18px;
}
.irhyt-product-short--v2 p{margin:0 0 10px;}
.irhyt-product-short--v2 p:last-child{margin:0;}

.irhyt-product-cart--v2{
	background:var(--color-surface-elevated);border:1px solid var(--color-border);
	border-radius:var(--radius-lg);padding:18px;
	box-shadow:var(--shadow-subtle);
}
.irhyt-product-cart--v2 .quantity{
	display:inline-flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-pill);overflow:hidden;background:var(--color-base);
}
.irhyt-product-cart--v2 .quantity input.qty{
	width:64px;text-align:center;border:none;background:transparent;
	padding:10px 0;font-weight:600;color:var(--color-ink);
}
/* Brand token — Add to Cart (WC override, enterprise) */
.irhyt-product-cart--v2 .single_add_to_cart_button,
.irhyt-product-cart--v2 .single_add_to_cart_button.button,
.irhyt-product-cart--v2 .single_add_to_cart_button.button.alt,
.irhyt-sticky-cta.btn-primary{
	flex:1;justify-content:center;
	background:var(--color-primary) !important;
	color:#fff !important;
	border:1.5px solid var(--color-primary) !important;
	padding:14px 20px !important;
	border-radius:var(--radius-pill) !important;
	font-weight:var(--fw-bold) !important;
	font-family:var(--font-display) !important;
	font-size:var(--text-sm) !important;
	letter-spacing:var(--tracking-snug) !important;
	box-shadow:var(--shadow-glow) !important;
	transition:var(--transition-base) !important;
	line-height:1 !important;
}
.irhyt-product-cart--v2 .single_add_to_cart_button:hover,
.irhyt-product-cart--v2 .single_add_to_cart_button.button:hover,
.irhyt-sticky-cta.btn-primary:hover{
	background:var(--color-primary-hover) !important;
	border-color:var(--color-primary-hover) !important;
	color:#fff !important;
	transform:translateY(-1px);
	box-shadow:0 10px 28px var(--color-primary-glow) !important;
}
.irhyt-product-cart--v2 .single_add_to_cart_button:active,
.irhyt-sticky-cta.btn-primary:active{background:var(--color-primary-active) !important;transform:translateY(0) !important;}
.irhyt-product-cart--v2 .single_add_to_cart_button:disabled,
.irhyt-product-cart--v2 .single_add_to_cart_button.disabled{opacity:0.55 !important;cursor:not-allowed !important;transform:none !important;box-shadow:none !important;background:var(--color-muted-light) !important;border-color:var(--color-border) !important;color:var(--color-muted) !important;}
/* Quantity uses brand tokens */
.irhyt-product-cart--v2 .quantity,
.irhyt-product-cart--v2 .quantity .qty{
	border-color:var(--color-border) !important;
	background:var(--color-base) !important;
	color:var(--color-ink) !important;
	font-family:var(--font-mono) !important;
	font-weight:var(--fw-semibold) !important;
	border-radius:var(--radius-pill) !important;
}
.irhyt-product-cart--v2 form.cart{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0;}
.irhyt-product-cart--v2 form.cart.variations_form{flex-direction:column;align-items:stretch;}
.irhyt-product-cart--v2 .variations{width:100%;margin-bottom:12px;}
.irhyt-product-cart--v2 .woocommerce-variation-add-to-cart{display:flex;gap:12px;align-items:center;flex-wrap:wrap;}
.irhyt-cart-hint{margin:12px 0 0;text-align:center;font-size:11px;color:var(--color-muted);letter-spacing:0.02em;}

.irhyt-trust-list{
	list-style:none;margin:18px 0 0;padding:0;
	display:grid;grid-template-columns:repeat(3,1fr);gap:12px;
}
@media(max-width:640px){ .irhyt-trust-list{grid-template-columns:1fr;}}
.irhyt-trust-list li{
	display:flex;gap:10px;align-items:center;
	background:var(--color-surface-elevated);border:1px solid var(--color-border);
	border-radius:var(--radius-md);padding:12px;
	font-size:var(--text-xs);line-height:1.3;color:var(--color-ink-secondary);
}
.irhyt-trust-list li strong{color:var(--color-ink);font-size:13px;}
.irhyt-trust-list li small{color:var(--color-muted);}
.irhyt-trust-icon{
	width:32px;height:32px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;
	font-weight:800;font-size:14px;
}
.irhyt-trust-icon.is-success{background:var(--color-success-alpha);color:var(--color-success);}
.irhyt-trust-icon.is-primary{background:var(--color-primary-alpha);color:var(--color-primary);}
.irhyt-trust-icon.is-accent{background:var(--color-accent-alpha);color:var(--color-accent);}
.irhyt-trust-icon svg,.irhyt-benefit-icon svg{width:16px;height:16px;flex:none;display:block;}

.irhyt-product-meta-box{
	margin-top:18px;border-top:1px solid var(--color-border);padding-top:18px;
	display:grid;gap:10px;font-size:var(--text-xs);color:var(--color-muted);
}
.irhyt-meta-row{
	display:flex;align-items:center;justify-content:space-between;gap:12px;
	padding:8px 0;border-bottom:1px dashed var(--color-border-subtle);
}
.irhyt-meta-row:last-child{border-bottom:none;}
.irhyt-meta-row span:first-child{font-weight:700;color:var(--color-ink);white-space:nowrap;}
.irhyt-meta-row span:last-child{color:var(--color-muted);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%;}
.irhyt-meta-row--share span:last-child{overflow:visible;max-width:none;}
.irhyt-share{display:inline-flex;gap:8px;align-items:center;}
.irhyt-share-btn{
	width:34px;height:34px;border-radius:var(--radius-pill);display:grid;place-items:center;
	background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-ink-secondary);
	font-size:12px;font-weight:700;cursor:pointer;transition:var(--transition-fast);text-decoration:none;
}
.irhyt-share-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-alpha);transform:translateY(-1px);}
.irhyt-share-btn.is-copied{background:var(--color-success);color:#fff;border-color:var(--color-success);}

/* Tabs — polish WooCommerce default */
.irhyt-product-tabs-wrap{margin-top:var(--space-60);}
.irhyt-product-tabs{
	background:var(--color-surface-elevated);border:1px solid var(--color-border);
	border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-subtle);
}
.irhyt-product-tabs .woocommerce-tabs{margin:0;}
.irhyt-product-tabs ul.tabs{
	display:flex;gap:0;list-style:none;margin:0;padding:0 14px;
	background:var(--color-surface);border-bottom:1px solid var(--color-border);
	overflow-x:auto;scrollbar-width:none;
}
.irhyt-product-tabs ul.tabs::-webkit-scrollbar{display:none;}
.irhyt-product-tabs ul.tabs li{
	margin:0;padding:0;border:none;background:transparent;
	position:relative;
}
.irhyt-product-tabs ul.tabs li a{
	display:block;padding:16px 18px;font-size:var(--text-sm);font-weight:600;
	color:var(--color-muted);border-bottom:2px solid transparent;white-space:nowrap;
	transition:var(--transition-fast);
}
.irhyt-product-tabs ul.tabs li.active a,
.irhyt-product-tabs ul.tabs li a:hover{
	color:var(--color-ink);border-bottom-color:var(--color-primary);
}
.irhyt-product-tabs .woocommerce-Tabs-panel{
	padding:var(--space-40);color:var(--color-ink-secondary);line-height:var(--leading-relaxed);font-size:var(--text-sm);
}
.irhyt-product-tabs .woocommerce-Tabs-panel h2:first-child{font-size:var(--text-lg);margin:0 0 12px;color:var(--color-ink);}
.irhyt-product-tabs .woocommerce-Tabs-panel p{margin:0 0 12px;}
.irhyt-product-tabs .woocommerce-Reviews .commentlist{list-style:none;margin:0;padding:0;display:grid;gap:16px;}
.irhyt-product-tabs .woocommerce-Reviews .star-rating{color:var(--color-accent);}

.irhyt-content--product{
	margin-top:var(--space-40);padding-top:var(--space-40);
	border-top:1px solid var(--color-border-subtle);
}

/* Remove old inline fallback styles */
.irhyt-product-layout{display:grid;} /* keep for BC */

/* Accessibility: focus */
.irhyt-gallery-thumb:focus-visible,.irhyt-gallery-zoom:focus-visible,.irhyt-share-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;}

/* === Landing product extensions (pure PHP landing) === */
.irhyt-landing{--landing-max:var(--max-width);}
.irhyt-landing-hero{padding-bottom:var(--space-40);}
.irhyt-landing-social-proof .irhyt-proof-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin:0;background:var(--color-ink);color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-soft);}
.irhyt-proof-stat{display:grid;gap:4px;place-content:center;text-align:center;padding:22px 16px;}
.irhyt-proof-stat + .irhyt-proof-stat{border-inline-start:1px solid rgba(255,255,255,0.16);}
.irhyt-proof-stat dt{order:2;font-size:var(--text-xs);opacity:0.7;}
.irhyt-proof-stat dd{order:1;margin:0;font-size:22px;font-weight:800;letter-spacing:-0.02em;line-height:1.2;}
.irhyt-proof-stat dd strong{font-weight:inherit;}
@media(max-width:640px){.irhyt-landing-social-proof .irhyt-proof-stats{grid-template-columns:1fr;} .irhyt-proof-stat + .irhyt-proof-stat{border-inline-start:none;border-top:1px solid rgba(255,255,255,0.16);}}
.irhyt-landing-section{padding:var(--space-80) 0;border-top:1px solid var(--color-border-subtle);background:var(--color-base);}
.irhyt-landing-section:nth-child(even){background:var(--color-surface);}
.irhyt-section-head{margin: 0 0 var(--space-60);display: flex;width: 100%;flex-direction: column;justify-content: center;align-items: center;flex-wrap: nowrap;}
.irhyt-section-title{font-size:var(--text-3xl);line-height:1.15;margin:10px 0 0;letter-spacing:var(--tracking-tight);}
.irhyt-section-sub{color:var(--color-muted);font-size:var(--text-sm);margin-top:10px;max-width:640px;}
.irhyt-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
@media(max-width:960px){.irhyt-benefit-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.irhyt-benefit-grid{grid-template-columns:1fr;}}
.irhyt-benefit-card{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px;transition:var(--transition-base);}
.irhyt-benefit-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft);border-color:var(--color-border-strong);}
.irhyt-benefit-icon{width:36px;height:36px;border-radius:var(--radius-md);display:grid;place-items:center;background:var(--color-primary-alpha);color:var(--color-primary);font-weight:800;margin-bottom:12px;}
.irhyt-benefit-card h3{font-size:15px;margin:0 0 8px;color:var(--color-ink);}
.irhyt-benefit-card p{font-size:13px;color:var(--color-muted);line-height:1.6;margin:0;}
.irhyt-narrative-grid{display:grid;gap:var(--space-40);}
.irhyt-narrative-text h2,.irhyt-narrative-text h3{color:var(--color-ink);margin:0 0 12px;}
.irhyt-narrative-media{border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--color-border);box-shadow:var(--shadow-soft);}
.irhyt-narrative-img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover;}
@media(min-width:960px){.irhyt-narrative-grid{grid-template-columns:1fr 1fr;align-items:center;} .irhyt-narrative-grid .irhyt-narrative-text:nth-child(odd){order:1;} .irhyt-narrative-grid .irhyt-narrative-media:nth-child(even){order:2;}}
/* Narrative chapters — teks bernomor, tanpa media */
.irhyt-narrative-chapters{display:grid;gap:var(--space-60);max-width:46rem;margin-inline:auto;}
.irhyt-narrative-step{font-size:clamp(32px,4vw,48px);font-weight:800;line-height:1;letter-spacing:-0.04em;color:transparent;-webkit-text-stroke:1.5px var(--color-border-strong);opacity:.9;user-select:none;}
.irhyt-narrative-lead{position:relative;display:grid;gap:14px;text-align:left;}
.irhyt-narrative-lead + .irhyt-narrative-lead{padding-top:var(--space-40);border-top:1px solid var(--color-border-subtle);}
.irhyt-narrative-text .irhyt-content{font-size:clamp(16px,1.5vw,18px);line-height:1.85;color:var(--color-ink-secondary);}
.irhyt-narrative-text .irhyt-content h2,.irhyt-narrative-text .irhyt-content h3{font-size:clamp(18px,2vw,22px);line-height:1.3;margin:0 0 10px;color:var(--color-ink);letter-spacing:-0.01em;}
.irhyt-narrative-text .irhyt-content p{margin:0 0 12px;}
.irhyt-narrative-text .irhyt-content p:last-child{margin-bottom:0;}
.irhyt-narrative-text .irhyt-content ul{margin:0 0 12px;padding-left:20px;display:grid;gap:6px;}
.irhyt-narrative-text .irhyt-content li::marker{color:var(--color-primary);}
.irhyt-narrative-text .irhyt-content strong{color:var(--color-ink);}
.irhyt-spec-table-wrap{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-subtle);}
.irhyt-spec-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);}
.irhyt-spec-table th{width:34%;text-align:left;padding:14px 18px;background:var(--color-surface);color:var(--color-ink);font-weight:700;border-bottom:1px solid var(--color-border-subtle);border-right:1px solid var(--color-border-subtle);}
.irhyt-spec-table td{padding:14px 18px;color:var(--color-ink-secondary);border-bottom:1px solid var(--color-border-subtle);}
.irhyt-spec-table tr:last-child th,.irhyt-spec-table tr:last-child td{border-bottom:none;}
@media(max-width:640px){.irhyt-spec-table th{width:40%;padding:12px;}.irhyt-spec-table td{padding:12px;}}
.irhyt-landing-reviews .irhyt-reviews-grid{display:grid;grid-template-columns:320px 1fr;gap:var(--space-40);align-items:start;}
@media(max-width:960px){.irhyt-landing-reviews .irhyt-reviews-grid{grid-template-columns:1fr;}}
.irhyt-reviews-summary{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px;position:sticky;top:calc(var(--header-height) + 16px);}
@media(max-width:960px){.irhyt-reviews-summary{position:static;}}
.irhyt-reviews-score{text-align:center;border-bottom:1px solid var(--color-border-subtle);padding-bottom:16px;margin-bottom:16px;}
.irhyt-score-num{font-size:36px;font-weight:800;color:var(--color-ink);display:block;line-height:1;}
.irhyt-score-stars{color:var(--color-accent);letter-spacing:0.06em;font-size:16px;}
.irhyt-reviews-score small{color:var(--color-muted);font-size:var(--text-xs);display:block;margin-top:6px;}
.irhyt-bar-row{display:grid;grid-template-columns:28px 1fr 28px;gap:8px;align-items:center;font-size:12px;color:var(--color-muted);margin:6px 0;}
.irhyt-bar-track{height:8px;background:var(--color-border-subtle);border-radius:var(--radius-pill);overflow:hidden;}
.irhyt-bar-fill{height:100%;background:var(--color-accent);border-radius:var(--radius-pill);transition:width 0.6s ease;}
.irhyt-review-cards{display:grid;gap:12px;margin-bottom:16px;}
.irhyt-review-card{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px;}
.irhyt-review-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;}
.irhyt-review-head strong{font-size:13px;color:var(--color-ink);}
.irhyt-review-stars{color:var(--color-accent);font-size:12px;}
.irhyt-review-card p{font-size:13px;color:var(--color-ink-secondary);line-height:1.6;margin:0 0 8px;}
.irhyt-review-card small{font-size:11px;color:var(--color-muted);}
.irhyt-empty-note{padding:20px;text-align:center;color:var(--color-muted);font-size:14px;border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);}
.irhyt-review-form{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border-subtle);}
.irhyt-faq-list{display: flex;gap: 12px;max-width: 100%;align-items: center;justify-items: center;justify-content: center;flex-direction: column;}
.irhyt-faq-item{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;width: 80vw;}
.irhyt-faq-item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;font-weight:600;font-size:14px;color:var(--color-ink);cursor:pointer;}
.irhyt-faq-item summary::-webkit-details-marker{display:none;}
.irhyt-faq-chevron{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-muted);transform:rotate(90deg);transition:var(--transition-fast);flex-shrink:0;}
.irhyt-faq-item[open] .irhyt-faq-chevron{transform:rotate(270deg);background:var(--color-primary);color:#fff;border-color:var(--color-primary);}
.irhyt-faq-a{padding:0 18px 16px;color:var(--color-ink-secondary);font-size:14px;line-height:1.7;border-top:1px solid var(--color-border-subtle);margin-top:0;padding-top:12px;}
.irhyt-sold-count{font-size:11px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--color-success);background:var(--color-success-alpha);padding:6px 10px;border-radius:var(--radius-pill);}
.variations_form .variations{border:none;margin:0 0 12px;width:100%;}
.variations_form .variations th.label{padding:8px 8px 8px 0;font-size:13px;font-weight:700;color:var(--color-ink);text-align:left;width:90px;}
.variations_form .variations td.value{padding:8px 0;}
.variations_form .variations select{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-base);color:var(--color-ink);font-size:14px;}
.irhyt-sticky-bar{position:fixed;left:0;right:0;bottom:0;z-index:49;background:var(--color-surface-elevated);border-top:1px solid var(--color-border);box-shadow:0 -10px 30px rgba(0,0,0,0.08);padding:10px 16px;transform:translateY(100%);opacity:0;pointer-events:none;transition:transform 0.28s ease, opacity 0.28s ease;}
.irhyt-sticky-bar.is-visible{transform:translateY(0);opacity:1;pointer-events:auto;}
@media(min-width:960px){.irhyt-sticky-bar{display:none !important;}}
.irhyt-sticky-inner{display:flex;align-items:center;gap:12px;max-width:var(--max-width);margin:0 auto;}
.irhyt-sticky-thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;border:1px solid var(--color-border);flex-shrink:0;}
.irhyt-sticky-info{flex:1;min-width:0;display:grid;}
.irhyt-sticky-title{font-size:13px;font-weight:700;color:var(--color-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;}
.irhyt-sticky-price{font-size:12px;color:var(--color-muted);font-weight:600;}
.irhyt-sticky-cta{white-space:nowrap;padding:10px 18px !important;font-size:13px !important;}

/* === Trust & Keywords & Review Polish === */
.irhyt-keywords{margin-top:12px;}
.irhyt-keywords-title{font-size:var(--text-xs);font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--color-muted);margin-bottom:10px;}
.irhyt-keywords-pills{display: flex;flex-wrap: wrap;gap: 8px;justify-content: center;flex-direction: row;padding: 24px 0px 32px 0px;}
.irhyt-keyword-pill{display:inline-flex;align-items:center;padding:7px 14px;border-radius:var(--radius-pill);font-size:13px;font-weight:600;text-decoration:none;border:1.5px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-secondary);transition:var(--transition-fast);}
.irhyt-keyword-pill:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-alpha);transform:translateY(-1px);}
.irhyt-keyword-pill.is-tag{border-style:dashed;}
.irhyt-keyword-pill.is-cat{background:var(--color-surface-elevated);}
.irhyt-keywords--inline{margin:0;padding:10px 0;border-top:1px dashed var(--color-border-subtle);margin-top:10px;}
.irhyt-keywords--inline .irhyt-keywords-title{margin-bottom:8px;}

/* Review form polish */
.irhyt-review-form{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px;margin-top:16px;}
.irhyt-review-form .comment-respond{margin:0;}
.irhyt-review-form .comment-reply-title{font-size:16px;font-weight:800;color:var(--color-ink);margin:0 0 8px;display:flex;align-items:center;gap:8px;}
.irhyt-review-form .comment-reply-title small{font-weight:400;font-size:12px;}
.irhyt-review-form .comment-notes, .irhyt-review-form .logged-in-as{font-size:12px;color:var(--color-muted);margin-bottom:12px;}
.irhyt-review-form label{font-size:13px;font-weight:600;color:var(--color-ink);margin-bottom:6px;display:block;}
.irhyt-review-form input[type="text"], .irhyt-review-form input[type="email"], .irhyt-review-form textarea, .irhyt-review-form select{
	width:100%;padding:10px 14px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-base);color:var(--color-ink);font-size:14px;transition:var(--transition-fast);
}
.irhyt-review-form input:focus, .irhyt-review-form textarea:focus, .irhyt-review-form select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha);outline:none;}
.irhyt-review-form textarea{min-height:120px;resize:vertical;}
.irhyt-review-form .form-submit{margin:16px 0 0;}
.irhyt-review-form .form-submit input[type="submit"]{
	background:var(--color-primary) !important;color:#fff !important;border:1.5px solid var(--color-primary) !important;
	padding:12px 20px !important;border-radius:var(--radius-pill) !important;font-weight:700 !important;
	box-shadow:var(--shadow-glow) !important;cursor:pointer;transition:var(--transition-base) !important;
}
.irhyt-review-form .form-submit input[type="submit"]:hover{background:var(--color-primary-hover) !important;border-color:var(--color-primary-hover) !important;transform:translateY(-1px);}
.irhyt-review-form .comment-form-rating{margin:12px 0;}
/* Bintang rating native WooCommerce (p.stars > span > a) — dipoles, tidak dibuat ulang. */
.irhyt-review-form p.stars{margin:6px 0 4px;}
.irhyt-review-form p.stars span{display:inline-flex;gap:6px;}
.irhyt-review-form p.stars a{display:grid;place-items:center;width:38px;height:38px;color:var(--color-muted);text-decoration:none;transition:var(--transition-fast);}
.irhyt-review-form p.stars a:hover,.irhyt-review-form p.stars a:focus-visible{color:var(--color-accent);transform:scale(1.06);outline:none;}
.irhyt-review-form p.stars:hover a{color:var(--color-accent);}
.irhyt-review-form p.stars a:hover ~ a{color:var(--color-muted);transform:none;}
.irhyt-review-form p.stars.selected a{color:var(--color-accent);}
.irhyt-review-form p.stars.selected a.active ~ a{color:var(--color-muted);}

/* Overall polish: animations, spacing, hover */
.irhyt-landing-section{animation:irhyt-fadeIn 0.5s ease both;}
.irhyt-landing-section:nth-child(2){animation-delay:0.05s;} .irhyt-landing-section:nth-child(3){animation-delay:0.08s;} .irhyt-landing-section:nth-child(4){animation-delay:0.11s;}
@keyframes irhyt-fadeIn{from{opacity:0;transform:translateY(8px);} to{opacity:1;transform:translateY(0);}}
.irhyt-benefit-card, .irhyt-review-card, .irhyt-spec-table-wrap{will-change:transform;}
.irhyt-product-cart--v2{position:relative;}
.irhyt-product-cart--v2::after{content:"";position:absolute;inset:-1px;border-radius:var(--radius-lg);pointer-events:none;border:1px solid transparent;transition:var(--transition-base);}
.irhyt-product-cart--v2:hover::after{border-color:var(--color-primary-alpha);}
/* Sticky bar polish */
.irhyt-sticky-bar{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:rgba(255,255,255,0.92);}
.dark .irhyt-sticky-bar, :root[data-theme="dark"] .irhyt-sticky-bar{background:rgba(17,24,39,0.92);}
/* Lightbox polish */
.irhyt-lightbox img{animation:irhyt-zoomIn 0.28s ease;}
@keyframes irhyt-zoomIn{from{transform:scale(0.96);opacity:0;} to{transform:scale(1);opacity:1;}}


/* Markup modular — dl spec efficient */
.irhyt-spec-list{margin: 0;padding: 0;display: grid;justify-content: center;align-items: center;align-content: center;}
.irhyt-spec-row{display:grid;grid-template-columns:180px 1fr;gap:16px;padding:14px 18px;border-bottom:1px solid var(--color-border-subtle);align-items:center;}
.irhyt-spec-row:last-child{border-bottom:none;}
.irhyt-spec-row dt{font-weight:700;color:var(--color-ink);font-size:13px;margin:0;}
.irhyt-spec-row dd{margin:0;color:var(--color-ink-secondary);font-size:13px;word-break:break-word;}
@media(max-width:640px){.irhyt-spec-row{grid-template-columns:1fr;gap:6px;padding:12px;}}

/* Reviews modular — hierarki jelas, enterprise, mobile responsive */
.irhyt-review-cards{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:12px;}
.irhyt-review-card article{margin:0;}
.irhyt-review-card .irhyt-review-head{display:flex;align-items:center;gap:12px;}
.irhyt-review-avatar{width:40px;height:40px;border-radius:50%;flex:none;display:grid;place-items:center;font-weight:800;font-size:15px;color:#fff;background:var(--color-primary);box-shadow:var(--shadow-subtle);}
.irhyt-review-meta{flex:1;min-width:0;display:grid;gap:2px;}
.irhyt-review-meta strong{font-size:13px;color:var(--color-ink);line-height:1.3;}
.irhyt-review-verified{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;color:var(--color-success);}
.irhyt-review-verified::before{content:"✓";font-weight:800;}
.irhyt-review-date{font-size:11px;color:var(--color-muted);}
.irhyt-review-card .irhyt-review-stars{margin-left:auto;flex:none;}
.irhyt-reviews-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:16px;padding:12px 18px;border-radius:var(--radius-pill);border:1.5px solid var(--color-primary);background:var(--color-primary-alpha);color:var(--color-primary);font-weight:700;font-size:14px;text-decoration:none;transition:var(--transition-base);}
.irhyt-reviews-cta:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-glow);}
.irhyt-reviews-cta:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;}
@media(max-width:640px){
	.irhyt-reviews-summary{padding:16px;}
	.irhyt-score-num{font-size:30px;}
	.irhyt-review-card{padding:14px;}
	.irhyt-review-avatar{width:36px;height:36px;font-size:13px;}
}
@media(prefers-reduced-motion:reduce){
	.irhyt-reviews-cta,.irhyt-reviews-cta:hover{transform:none;transition:none;}
}
