/*
Theme Name: Veshaalta
Theme URI: https://veshaalta.com
Author: Veshaalta
Description: תבנית בלוקים ייעודית לאתר ושאלת, יהדות לאנשים חושבים. טיפוגרפיה עברית עגולה ומודרנית (Rubik ExtraBold לכותרות + Assistant לגוף, אחסון עצמי, ללא סריף), פינות מעוגלות ורכות בכל מקום + צללים אמביינטיים. עיצוב חי ואנרגטי המבוסס על מדידה ישירה של CSS אמיתי מעקשיבא/יומי/תנ"ך-יומי, לא רושם-עין. RTL מלא, מהירות ונגישות.
Requires at least: 6.5
Tested up to: 7.0
Requires PHP: 7.4
Version: 1.1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: veshaalta
Tags: rtl-language-support, block-patterns, full-site-editing, blog
*/

/* ===== בסיס ===== */

body {
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

/* הדר דביק עם טשטוש עדין */
header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 100;
}

header.wp-block-template-part > .wp-block-group {
	background: rgba(255, 255, 255, 0.88) !important;
	backdrop-filter: saturate(160%) blur(10px);
	-webkit-backdrop-filter: saturate(160%) blur(10px);
}

/* הירו, גוון סגול-כחול חי + מרקם-נקודות עדין (השראה ישירה ממרקם-הרקע של עקשיבא בהירו שלה),
   לא רק כתם-גרדיאנט שטוח על לבן. אותו מרקם-נקודות חוזר בפוטר (גוון-הפוך, בהיר-על-כהה) כחוט מזהה. */
.vst-hero {
	background:
		radial-gradient(circle, rgba(76, 79, 234, 0.09) 1.5px, transparent 1.5px),
		radial-gradient(ellipse 1000px 480px at 50% -60px, rgba(76, 79, 234, 0.14), transparent 68%),
		radial-gradient(ellipse 700px 380px at 100% 40%, rgba(234, 76, 106, 0.06), transparent 70%);
	background-size: 24px 24px, auto, auto;
	background-position: 0 0, center, center;
}

.vst-hero h1 {
	letter-spacing: 0.01em;
}

.vst-hero > p + .wp-block-search::before {
	content: "";
	display: block;
	width: 64px;
	height: 3px;
	margin: 0 auto 26px;
	border-radius: 2px;
	background: var(--wp--preset--color--accent);
}

/* כפתורי ערוצים בהירו */
.vst-cta .wp-block-button__link {
	padding: 10px 22px;
	font-size: 0.95rem;
}

/* ירוק-וואטסאפ מוכר, אך מוכהה מעט כדי לעבור ניגודיות AA (4.5:1) עם טקסט לבן, הגוון הבהיר יותר עמד רק על 3.1:1 */
.vst-cta .vst-whatsapp .wp-block-button__link {
	background: #136e35;
}

.vst-cta .vst-whatsapp .wp-block-button__link:hover {
	background: #0f5c2c;
}

/* כותרת סקציה עם סימן זהב */
.vst-section-title {
	position: relative;
	padding-inline-start: 16px;
}

.vst-section-title::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 0.18em;
	bottom: 0.18em;
	width: 5px;
	border-radius: 3px;
	background: var(--wp--preset--color--accent);
}

a {
	text-underline-offset: 3px;
	transition: color 0.15s ease;
}

/* שדות טופס בכל האתר (תגובות, ליבה, כל טופס עתידי), מעוגלים ורכים בברירת-מחדל,
   לא תיבת-דפדפן מרובעת. חלה גם על שדות שתוספים מוסיפים, לא רק תוכן התבנית. */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="search"]:not(.wp-block-search__input),
textarea,
select {
	border: 2px solid var(--wp--preset--color--line);
	border-radius: 14px;
	padding: 10px 16px;
	font-family: inherit;
	font-size: 1rem;
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--ink);
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus {
	outline: none;
	border-color: var(--wp--preset--color--primary);
	box-shadow: 0 0 0 4px rgba(76, 79, 234, 0.14);
}

/* תוכן מאמר, קריאה ארוכה */
.entry-content p {
	margin-block: 0 1.35em;
}

.entry-content h2 {
	margin-block: 1.6em 0.6em;
}

.entry-content h4 {
	color: var(--wp--preset--color--muted);
	font-weight: 500;
	line-height: 1.65;
}

.entry-content blockquote {
	border-inline-start: 3px solid var(--wp--preset--color--accent);
	padding-inline-start: 1.2em;
	color: var(--wp--preset--color--muted);
	font-style: normal;
}

/* כרטיסי מאמרים, פינות מעוגלות משמעותית + צל-אמביינטי-רך גם במנוחה (נמדד ישירות מ-CSS של עקשיבא:
   0 15px 50px rgba(0,0,0,.08) על קונטיינרים, לא רק בהעברת-עכבר), פס עליון עבה וחי (השראת עקשיבא, לא הצניעות של ספריא) */
.vst-card {
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--line);
	border-top: 6px solid var(--wp--preset--color--primary);
	border-radius: 22px;
	padding: 24px 26px 20px;
	box-shadow: 0 10px 30px rgba(20, 21, 31, 0.06);
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
	height: 100%;
}

.vst-card:nth-of-type(3n+2) {
	border-top-color: var(--wp--preset--color--accent);
}

.vst-card:nth-of-type(3n) {
	border-top-color: var(--wp--preset--color--accent-2);
}

.vst-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 40px rgba(76, 79, 234, 0.18);
}

.vst-card .wp-block-post-title a {
	text-decoration: none;
	color: var(--wp--preset--color--ink);
}

.vst-card .wp-block-post-title a:hover {
	color: var(--wp--preset--color--primary);
}

/* צ'יפים של פרשה/מועד, תגית מלאה וחיה, לא רק טקסט על שטיפה עדינה */
.vst-chips a,
.single .wp-block-post-terms a {
	display: inline-block;
	background: var(--wp--preset--color--primary);
	color: #fff;
	border-radius: 999px;
	padding: 4px 14px;
	font-size: 0.8rem;
	font-weight: 600;
	font-family: var(--wp--preset--font-family--assistant);
	text-decoration: none;
	transition: background 0.15s ease, transform 0.15s ease;
}

/* accent (#EA4C6A) על טקסט לבן קטן נותן רק 3.66:1, מתחת לסף AA (4.5:1) לטקסט רגיל.
   דיו כהה על accent נותן 4.96:1, עובר AA ושומר על אותו צבע-רקע חי. */
.vst-chips a:hover {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--ink);
	transform: translateY(-1px);
}

.single .wp-block-post-terms a {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--ink);
}

/* אינדקס-נושאים כ"כרטיסי-בועה", בהשראת רשת-הנושאים של עקשיבא: בועה אורגנית+אייקון, גוון-מתחלף,
   תווית, ומונה-מאמרים כפיל תחתון. משמש גם לאינדקס-הפרשות וגם לכל אינדקס-נושאים עתידי (שו"ת). */
.vsk-parasha-index ul {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
	gap: 16px;
	list-style: none;
	padding: 0;
	margin: 24px 0 0;
}

.vsk-parasha-index li {
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 22px;
	box-shadow: 0 8px 24px rgba(20, 21, 31, 0.05);
	transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.vsk-parasha-index li:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px rgba(76, 79, 234, 0.16);
}

.vsk-parasha-index li a {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 8px;
	padding: 18px 12px 16px;
	text-decoration: none;
	color: var(--wp--preset--color--ink);
}

.vsk-blob {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	/* צורת-בועה אורגנית, לא עיגול מושלם */
	border-radius: 42% 58% 55% 45% / 45% 45% 55% 55%;
}

.vsk-parasha-index .vsk-topic-label {
	font-family: var(--wp--preset--font-family--assistant);
	font-weight: 700;
	font-size: 0.95rem;
}

.vsk-parasha-index li:hover .vsk-topic-label {
	color: var(--wp--preset--color--primary);
}

.vsk-parasha-index .vsk-count {
	font-family: var(--wp--preset--font-family--assistant);
	font-size: 0.75rem;
	color: var(--wp--preset--color--muted);
}

/* ארבעה גוונים מתחלפים לבועות, פסטל-רך של הפלטה החיה, לא כתם-צבע שטוח אחד חוזר */
.vsk-hue-0 .vsk-blob { background: #EDEEFC; color: var(--wp--preset--color--primary); }
.vsk-hue-1 .vsk-blob { background: #FCE9ED; color: var(--wp--preset--color--accent); }
.vsk-hue-2 .vsk-blob { background: #E6F5F5; color: var(--wp--preset--color--accent-2); }
.vsk-hue-3 .vsk-blob { background: #FFF4E0; color: #B5791F; }

/* אינדקס-פרשות מחולק ל-5 חומשים, לא קיר-אחיד של 54 אריחים - "ים-תוכן" מורגש כמבנה-ברור,
   לא כמסה בלתי-מובחנת. כותרת-חומש בשפת vst-section-title (פס-צבע-בצד), עקבית עם שאר האתר. */
.vsk-parasha-books .vsk-parasha-book + .vsk-parasha-book {
	margin-top: var(--wp--preset--spacing--50);
}

.vsk-parasha-book-title {
	position: relative;
	padding-inline-start: 16px;
	margin: 0 0 18px;
	font-family: var(--wp--preset--font-family--rubik);
	font-size: 1.15rem;
	font-weight: 800;
	color: var(--wp--preset--color--ink);
}

.vsk-parasha-book-title::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 0.15em;
	bottom: 0.15em;
	width: 5px;
	border-radius: 3px;
	background: var(--wp--preset--color--accent);
}

/* פוטר: ניטרלי-כהה (ink) לא כתם-מותג-רווי (הבעלים תיאר את הפוטר הסגול-כחול הקודם כ"מכוער") ,
   נמדד ישירות מול עקשיבא (פוטר-בהיר-אפור) ותנ"ך-יומי (פוטר-אפור-כהה-ניטרלי) - שניהם נמנעים
   מבלוק-צבע-רווי; פס-מעבר עליון דק מוסיף חתימת-מותג בלי כתם גדול. מרקם-הנקודות מהירו חוזר כאן
   הפוך-גוון (לבן-על-כהה) כחוט-מקשר בין שני הקצוות של העמוד. */
.vst-footer {
	position: relative;
	background-image:
		radial-gradient(circle, rgba(255, 255, 255, 0.05) 1.5px, transparent 1.5px);
	background-size: 24px 24px;
}

.vst-footer::before {
	content: "";
	position: absolute;
	inset-inline: 0;
	top: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--wp--preset--color--primary), var(--wp--preset--color--accent), var(--wp--preset--color--accent-2));
}

.vst-footer-stat {
	color: rgba(255, 255, 255, 0.7);
	margin-top: 14px;
}

.vst-footer-stat strong {
	color: #ffffff;
}

/* פוטר: רשימת עמודים נקייה */
.wp-block-page-list,
footer .wp-block-page-list {
	list-style: none;
	padding-inline-start: 0;
}

footer.wp-block-template-part .wp-block-page-list li {
	margin: 7px 0;
}

footer.wp-block-template-part .wp-block-page-list a {
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
}

footer.wp-block-template-part .wp-block-page-list a:hover {
	color: #ffffff;
	text-decoration: underline;
}

footer.wp-block-template-part .vsk-legal-links {
	justify-content: flex-start;
	color: rgba(255, 255, 255, 0.85);
}

footer.wp-block-template-part .vsk-legal-links a {
	color: rgba(255, 255, 255, 0.85);
}

/* [vsk_popular] מוצג גם בעמוד-מאמר (כרטיס-לבן, ברירת-מחדל) וגם בפוטר-הכהה - הקשר-הפוטר
   דורס לרקע-שקוף+טקסט-בהיר במקום כרטיס-לבן, כדי להשתלב בפוטר לא לשבת-עליו כמדבקה. */
footer.wp-block-template-part .vsk-popular {
	background: transparent;
	border: none;
	box-shadow: none;
	padding: 0;
}

footer.wp-block-template-part .vsk-popular h3 {
	font-size: 1.1rem;
	color: #ffffff;
	font-family: var(--wp--preset--font-family--assistant);
}

footer.wp-block-template-part .vsk-popular ol {
	padding-inline-start: 20px;
}

footer.wp-block-template-part .vsk-popular a {
	color: rgba(255, 255, 255, 0.85);
}

footer.wp-block-template-part .vsk-popular a:hover {
	color: #ffffff;
}

footer.wp-block-template-part .vsk-popular .vsk-views {
	color: rgba(255, 255, 255, 0.55);
}

/* חיפוש בהירו, גדול, עם צל חי כדי להרגיש כמו גיבור-העמוד */
.vst-hero .wp-block-search__input {
	border-radius: 999px;
	border: 2px solid var(--wp--preset--color--line);
	padding: 14px 24px;
	background: var(--wp--preset--color--surface);
	font-size: 1.05rem;
}

.vst-hero .wp-block-search {
	filter: drop-shadow(0 14px 34px rgba(76, 79, 234, 0.16));
}

.vst-hero .wp-block-search__button {
	border-radius: 999px;
	box-shadow: 0 6px 18px rgba(76, 79, 234, 0.35);
}

/* כפתורים בכלל, גדולים ועגולים-לגמרי, עם צל שנותן תחושת-הרמה (השראת עקשיבא, לא כפתור-טקסט צנוע) */
.wp-block-button__link {
	padding: 13px 32px;
	font-size: 1.02rem;
	box-shadow: 0 4px 14px rgba(76, 79, 234, 0.22);
	transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.wp-block-button__link:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 22px rgba(76, 79, 234, 0.3);
}

.is-style-outline .wp-block-button__link {
	box-shadow: none;
}

/* נגישות: פוקוס ברור בכל מקום, כולל על רקעים צבעוניים (צ'יפים/כפתורים מלאים), לא רק על לבן.
   טבעת כפולה (מסגרת בהירה + קו-מתאר) שומרת על ניגודיות בלי תלות בצבע הרקע שמתחתיה. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
	outline: 3px solid var(--wp--preset--color--ink);
	outline-offset: 3px;
	box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.9);
	border-radius: 4px;
}

.vst-chips a:focus-visible,
.single .wp-block-post-terms a:focus-visible,
.wp-block-button__link:focus-visible {
	outline-color: #fff;
	box-shadow: 0 0 0 3px var(--wp--preset--color--ink);
}

/* יעד-מגע מינימלי 24×24 פיקסל (WCAG 2.2, כלל 2.5.8), צ'יפים וקישורי-מטא קטנים */
.vst-chips a,
.single .wp-block-post-terms a {
	min-height: 24px;
	display: inline-flex;
	align-items: center;
}

/* דילוג-לתוכן, גלוי וברור בפוקוס, לא רק "screen-reader-text" ברירת-המחדל השקופה */
.skip-link.screen-reader-text:focus {
	position: fixed;
	top: 10px;
	inset-inline-start: 10px;
	z-index: 9999;
	width: auto;
	height: auto;
	padding: 12px 22px;
	background: var(--wp--preset--color--ink);
	color: #fff;
	border-radius: 14px;
	font-family: var(--wp--preset--font-family--assistant);
	font-weight: 600;
	clip: auto;
	clip-path: none;
}

/* "שאל את הרב", כרטיס-תמיכה רגוע, לא בלוק-גרדיאנט צועק. אותה שפה חזותית כמו כרטיסי-המאמרים
   וכרטיסי-הבלוב באינדקס-הפרשות (לבן, פס-צבע-בצד, בלוב פסטלי+אייקון-קו), עקבי, לא עוד רכיב חדש. */
.vsk-ask-banner {
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--line);
	border-inline-start: 5px solid var(--wp--preset--color--accent);
	border-radius: 22px;
	padding: 20px 24px;
	margin: 32px 0;
	box-shadow: 0 10px 30px rgba(20, 21, 31, 0.06);
}

.vsk-ask-banner-icon {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	background: #FCE9ED;
	color: var(--wp--preset--color--accent);
	border-radius: 42% 58% 55% 45% / 45% 45% 55% 55%;
}

.vsk-ask-banner-text {
	flex: 1 1 260px;
}

.vsk-ask-banner-text h3 {
	margin: 0 0 4px;
	font-family: var(--wp--preset--font-family--rubik);
	font-weight: 800;
	font-size: 1.25rem;
	color: var(--wp--preset--color--ink);
}

.vsk-ask-banner-text p {
	margin: 0;
	color: var(--wp--preset--color--muted);
	font-family: var(--wp--preset--font-family--assistant);
}

.vsk-ask-banner-btn.wp-block-button__link {
	flex: 0 0 auto;
}

/* עמוד שאלה-ותשובה: תיבת-שאלה מובלטת מעל תשובת-הרב */
.vsk-question-box {
	background: var(--wp--preset--color--wash);
	border-radius: 20px;
	padding: 18px 22px;
	margin-bottom: 22px;
}

.vsk-question-label {
	font-family: var(--wp--preset--font-family--assistant);
	font-weight: 700;
	font-size: 0.85rem;
	color: var(--wp--preset--color--primary);
	margin: 0 0 6px;
}

.vsk-question-text {
	font-size: 1.1rem;
	margin: 0;
}

.vsk-answer-label {
	font-family: var(--wp--preset--font-family--assistant);
	color: var(--wp--preset--color--accent);
	font-size: 1rem;
	margin: 0 0 10px;
}

/* טופס שאל-את-הרב / תיאום-שיעור: כפתור-כדור עקבי + חיווי-אימות */
.vsk-ask-reassurance {
	font-size: 0.85rem;
	color: var(--wp--preset--color--muted);
	margin-top: -6px;
}

/* נושאים פופולריים / קשורים, כרטיסים באותה שפה חזותית כמו כרטיסי-המאמרים, לא רשימה חשופה */
.vsk-more-reading {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-top: var(--wp--preset--spacing--40);
}

.vsk-popular,
.vsk-related-topics {
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 20px;
	padding: 20px 22px;
	box-shadow: 0 8px 24px rgba(20, 21, 31, 0.05);
}

.vsk-popular h3,
.vsk-related-topics h3 {
	margin: 0;
	font-family: var(--wp--preset--font-family--rubik);
	font-size: 1.05rem;
}

.vsk-popular ol,
.vsk-related-topics ul {
	padding-inline-start: 20px;
	margin: 10px 0 0;
}

.vsk-popular li,
.vsk-related-topics li {
	margin: 6px 0;
	line-height: 1.6;
}

.vsk-popular .vsk-views {
	color: var(--wp--preset--color--muted);
	font-size: 0.85rem;
}

@media (max-width: 560px) {
	.vsk-more-reading {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 560px) {
	.vsk-ask-banner {
		flex-direction: column;
		text-align: center;
		padding: 26px 22px;
	}
}

/* דילוג עדין באנימציות למבקשי הפחתת תנועה */
@media (prefers-reduced-motion: reduce) {
	.vst-card,
	.wp-block-button__link,
	.vst-chips a,
	.vsk-parasha-index li,
	a {
		transition: none;
	}
}
