/* ═══════════════════════════════════════════════════════════
   SINGLE POST
   Loaded only on single posts, after main.css.
   Hero background, featured image and section headings are
   shared with other templates and live in main.css.
═══════════════════════════════════════════════════════════ */


/* ═══════════════════════════════════════════════════════════
   DROP CAP — first letter of the first paragraph
═══════════════════════════════════════════════════════════ */

.single-body .wp-block-post-content > p:first-of-type::first-letter {
	font-family: var(--jd-font-heading);
	font-size: 3.0em;
	font-weight: 700;
	line-height: 0.78;
	float: left;
	margin-right: 8px;
	margin-top: 8px;
	color: var(--jd-color-text);
}


/* ═══════════════════════════════════════════════════════════
   PULL QUOTE
═══════════════════════════════════════════════════════════ */

.wp-block-pullquote {
	border: none;
	background: none;
	background-color: transparent;
	padding: 0;
	margin: 40px 0;
	text-align: center;
	position: relative;
}

/* Opening quote mark */
.wp-block-pullquote::before {
	content: '\201C';
	display: block;
	font-family: var(--jd-font-heading);
	font-size: 80px;
	line-height: 0.6;
	color: var(--jd-color-accent);
	text-align: center;
}

.wp-block-pullquote blockquote {
	margin: 0;
	padding: 0;
	border: none;
}

.wp-block-pullquote blockquote p {
	font-family: var(--jd-font-heading);
	font-size: 24px;
	font-weight: 700;
	font-style: italic;
	line-height: 1.45;
	color: var(--jd-color-text);
	margin: 0;
}

/* Decorative divider — after the quote text, before the citation */
.wp-block-pullquote blockquote p::after {
	content: '';
	display: block;
	width: 100%;
	height: 2px;
	background: repeating-linear-gradient(
		-45deg,
		var(--jd-color-accent),
		var(--jd-color-accent) 2px,
		transparent 2px,
		transparent 8px
	);
	margin-top: 28px;
	margin-bottom: 28px;
	opacity: 0.35;
}

/* Citation (author name + role) */
.wp-block-pullquote cite {
	display: block;
	font-family: var(--jd-font-body);
	font-size: 14px;
	color: var(--jd-color-text);
	line-height: 1.6;
}

/* Role line — second line inside cite */
.wp-block-pullquote cite em {
	display: block;
	font-family: var(--jd-font-body);
	font-size: 13px;
	font-weight: 400;
	font-style: normal;
	color: var(--jd-color-text-muted);
	margin-top: 2px;
}

@media (max-width: 768px) {
	.wp-block-pullquote blockquote p {
		font-size: 18px;
	}

	.wp-block-pullquote::before {
		font-size: 60px;
	}
}


/* ═══════════════════════════════════════════════════════════
   IMAGE CAPTION
═══════════════════════════════════════════════════════════ */

.wp-element-caption {
	font-family: var(--jd-font-body);
	font-size: 12px;
	font-style: italic;
	text-align: center;
	line-height: 1.5;
}


/* ═══════════════════════════════════════════════════════════
   INSTAGRAM EMBED — Instagram link on its own line (functions.php)
═══════════════════════════════════════════════════════════ */

.wp-block-embed-instagram {
	margin: 32px 0;
}

/* Instagram sets the embed to max 540px with margin: 1px — centre it */
.wp-block-embed-instagram .wp-block-embed__wrapper {
	display: flex;
	justify-content: center;
}

.wp-block-embed-instagram .instagram-media {
	margin: 0 auto !important;
}


/* ═══════════════════════════════════════════════════════════
   HERO
═══════════════════════════════════════════════════════════ */

/* Title */
.single-title.wp-block-post-title {
	font-family: var(--jd-font-heading);
	font-size: 42px;
	font-weight: 700;
	line-height: 1.15;
	color: var(--jd-color-on-dark);
	margin-top: 0;
	margin-bottom: 16px;
}

.single-title.wp-block-post-title a {
	color: var(--jd-color-on-dark);
	text-decoration: none;
	transition: color var(--jd-transition);
}

.single-title.wp-block-post-title a:hover,
.single-title.wp-block-post-title a:focus {
	color: var(--jd-color-on-dark) !important;
}

/* Excerpt */
.single-excerpt.wp-block-post-excerpt,
.single-excerpt .wp-block-post-excerpt__excerpt {
	font-family: var(--jd-font-body);
	font-size: 15px;
	line-height: 1.65;
	color: rgba(var(--jd-color-on-dark-rgb), 0.85);
	margin: 0 0 20px;
}

/* Remove margin-bottom inherited from .hero-meta */
.single-meta {
	margin-bottom: 0 !important;
}

/* Meta row — flatten wp:post-author into the flex row */
.single-meta .wp-block-post-author,
.single-meta .wp-block-post-author__content {
	display: contents;
}

.single-meta .wp-block-post-author__name {
	color: var(--jd-color-on-dark);
	font-family: var(--jd-font-body);
	font-size: 12px;
	font-weight: 400;
	margin: 0;
	white-space: nowrap;
}

/* Featured image (base styles in main.css) */
.single-hero-image.wp-block-post-featured-image {
	margin-bottom: 10px;
}

.single-image-caption {
	font-family: var(--jd-font-body);
	font-size: 12px;
	font-style: italic;
	color: rgba(var(--jd-color-on-dark-rgb), 0.6);
	text-align: center;
	margin: 0;
	line-height: 1.5;
}


/* ═══════════════════════════════════════════════════════════
   "НЕ ПРОПУСТІТЬ" SECTION
═══════════════════════════════════════════════════════════ */

.single-latest-section {
	background-color: #f9fafb;
	padding-top: 36px;
	padding-bottom: 60px;
}


/* ═══════════════════════════════════════════════════════════
   TAGS
═══════════════════════════════════════════════════════════ */

.article-tags.wp-block-post-terms {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	margin-top: 40px;
	margin-bottom: 0;
}

.article-tags .wp-block-post-terms__separator {
	display: none;
}

.article-tags a {
	display: inline-block;
	border: 1px solid var(--jd-color-accent);
	border-radius: var(--jd-radius-sm);
	padding: 4px 12px;
	color: var(--jd-color-accent);
	font-family: var(--jd-font-body);
	font-size: 13px;
	font-weight: 400;
	text-decoration: none;
	line-height: 1.4;
	transition: background var(--jd-transition), color var(--jd-transition);
}

.article-tags a:hover {
	background: var(--jd-color-accent);
	color: var(--jd-color-on-dark) !important;
}


/* ═══════════════════════════════════════════════════════════
   SHARE POST
═══════════════════════════════════════════════════════════ */

.jd-share-post {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 24px;
}

.jd-share-post__label {
	font-family: var(--jd-font-heading);
	font-weight: 700;
	white-space: nowrap;
}

.jd-share-post__icons {
	display: flex;
	align-items: center;
	gap: 8px;
}

/* Button base & network hover colours: main.css (shared with the author page) */

/* Copied state — green checkmark feedback + tooltip */
.jd-share-btn--copy {
	position: relative;
}

.jd-share-btn--copy::after {
	content: 'Скопійовано!';
	position: absolute;
	bottom: calc(100% + 6px);
	left: 50%;
	transform: translateX(-50%);
	background: var(--jd-color-text);
	color: var(--jd-color-on-dark);
	font-family: var(--jd-font-body);
	font-size: 11px;
	white-space: nowrap;
	padding: 4px 8px;
	border-radius: var(--jd-radius);
	pointer-events: none;
	opacity: 0;
	transition: opacity var(--jd-transition);
}

.jd-share-btn--copy.is-copied {
	color: #22c55e;
	border-color: #22c55e;
}

.jd-share-btn--copy.is-copied::after {
	opacity: 1;
}

/* ── Hero (dark background) variant ── */

.single-hero .jd-share-post__label {
	display: none;
	color: rgba(var(--jd-color-on-dark-rgb), 0.75);
}

.single-hero .jd-share-btn {
	border-color: rgba(var(--jd-color-on-dark-rgb), 0.35);
	background: transparent;
	color: var(--jd-color-on-dark);
}

.single-hero .jd-share-btn--facebook:hover { color: var(--jd-color-on-dark); border-color: #1877f2; background: #1877f2; }
.single-hero .jd-share-btn--telegram:hover { color: var(--jd-color-on-dark); border-color: #0088cc; background: #0088cc; }
.single-hero .jd-share-btn--threads:hover,
.single-hero .jd-share-btn--x:hover        { color: #000; border-color: var(--jd-color-on-dark); background: #fff; }
.single-hero .jd-share-btn--copy:hover     { color: var(--jd-color-on-dark); border-color: var(--jd-color-on-dark); background: rgba(var(--jd-color-on-dark-rgb), 0.12); }
.single-hero .jd-share-btn--copy.is-copied { color: #4ade80; border-color: #4ade80; }


/* ═══════════════════════════════════════════════════════════
   REPORT AN ERROR — card + dialog form (assets/js/report.js)
═══════════════════════════════════════════════════════════ */

.jd-report {
	max-width: 440px;
	margin-top: 32px;
	padding: 20px 24px;
	border: 1px solid var(--jd-color-border);
	border-radius: var(--jd-radius-lg);
}

.jd-report__title {
	font-family: var(--jd-font-heading);
	font-size: 16px;
	font-weight: 700;
	color: var(--jd-color-text);
	margin: 0 0 4px;
}

.jd-report__open {
	padding: 0;
	border: 0;
	background: none;
	font-family: var(--jd-font-body);
	font-size: 15px;
	color: var(--jd-color-accent);
	cursor: pointer;
	text-align: left;
}

.jd-report__open:hover,
.jd-report__open:focus-visible {
	text-decoration: underline;
}

/* Dialog */
.jd-report-dialog {
	width: min(620px, calc(100% - 32px));
	max-height: calc(100% - 32px);
	padding: 0;
	border: 0;
	border-radius: var(--jd-radius-lg);
	background: var(--jd-color-bg);
	color: var(--jd-color-text);
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
}

.jd-report-dialog::backdrop {
	background: rgba(12, 18, 12, 0.55);
}

.jd-report-form {
	padding: 24px 32px 32px;
}

/* Heading and close button share the top row */
.jd-report-form__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 20px;
}

.jd-report-form__close {
	display: inline-flex;
	flex-shrink: 0;
	margin: -2px -6px 0 0;
	padding: 6px;
	border: 0;
	background: none;
	color: var(--jd-color-text);
	cursor: pointer;
}

.jd-report-form__close:hover {
	color: var(--jd-color-accent);
}

.jd-report-form__heading {
	font-family: var(--jd-font-heading);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.25;
	margin: 0 !important; /* beats the global h2 margin-top: 36px !important (main.css) */
}

.jd-report-form__fragment {
	margin: 0 0 16px;
	padding: 10px 14px;
	border-left: 3px solid var(--jd-color-accent);
	background: var(--jd-color-surface);
	font-family: var(--jd-font-body);
	font-size: 14px;
	font-style: italic;
}

.jd-report-form__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.jd-report-form__grid input,
.jd-report-form__grid select,
.jd-report-form__grid textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 12px 14px;
	border: 1px solid var(--jd-color-border);
	border-radius: var(--jd-radius);
	background: var(--jd-color-bg);
	font-family: var(--jd-font-body);
	font-size: 15px;
	color: var(--jd-color-text);
}

.jd-report-form__grid select:invalid {
	color: var(--jd-color-text-muted);
}

.jd-report-form__grid input:focus,
.jd-report-form__grid select:focus,
.jd-report-form__grid textarea:focus {
	outline: none;
	border-color: var(--jd-color-accent);
}

.jd-report-form__grid textarea {
	grid-column: 1 / -1;
	resize: vertical;
}

/* Honeypot */
.jd-report-form__hp {
	position: absolute !important;
	left: -9999px;
	width: 1px;
	height: 1px;
	opacity: 0;
}

.jd-report-form__status {
	min-height: 1.4em;
	margin: 12px 0 0;
	font-family: var(--jd-font-body);
	font-size: 14px;
	color: var(--jd-color-text);
}

.jd-report-form__status.is-error {
	color: var(--jd-color-accent);
}

.jd-report-form__footer {
	margin-top: 16px;
	padding-top: 20px;
	border-top: 1px dashed var(--jd-color-border);
}

.jd-report-form__submit {
	min-width: 200px;
	padding: 14px 28px;
	border: 0;
	border-radius: var(--jd-radius);
	background: var(--jd-color-dark);
	color: var(--jd-color-on-dark);
	font-family: var(--jd-font-body);
	font-size: 16px;
	cursor: pointer;
	transition: background var(--jd-transition);
}

.jd-report-form__submit:hover {
	background: var(--jd-color-accent);
}

.jd-report-form__submit:disabled {
	opacity: 0.6;
	cursor: default;
}

@media (max-width: 600px) {
	.jd-report-form {
		padding: 20px;
	}

	.jd-report-form__heading {
		font-size: 21px;
	}

	.jd-report-form__grid {
		grid-template-columns: 1fr;
	}

	.jd-report-form__submit {
		width: 100%;
	}
}


/* ═══════════════════════════════════════════════════════════
   AUTHOR BOX & SUPPORT BOX
═══════════════════════════════════════════════════════════ */

.single-author,
.single-support {
	margin-top: 40px;
	padding: 24px;
	border-radius: var(--jd-radius);
}

.single-author {
	background: var(--jd-color-light-gray);
}

.single-author-heading,
.single-support-title {
	font-family: var(--jd-font-heading);
	font-size: 20px;
	font-weight: 700;
}

.single-author-heading {
	color: var(--jd-color-text);
	margin: 0 0 16px;
}

.single-author-inner {
	display: flex;
	gap: 16px;
	align-items: flex-start;
}

.single-author-photo {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
}

.single-author-name {
	font-family: var(--jd-font-body);
	font-size: 15px;
	font-weight: 700;
	color: var(--jd-color-text);
	margin: 0 0 8px;
}

/* Name links to the author page */
.single-author-name a {
	color: inherit;
	text-decoration: none;
	transition: color var(--jd-transition);
}

.single-author-name a:hover,
.single-author-name a:focus {
	color: var(--jd-color-accent);
}

.single-author-bio {
	font-family: var(--jd-font-body);
	font-size: 14px;
	line-height: 1.6;
	color: var(--jd-color-text-secondary);
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 8;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

@media (max-width: 768px) {
	/* Row 1: photo + name  |  Row 2: bio (full width) */
	.single-author-inner {
		display: grid;
		grid-template-columns: 64px 1fr;
		grid-template-areas:
			"photo name"
			"bio   bio";
		gap: 8px 16px;
		align-items: center;
	}

	.single-author-photo {
		grid-area: photo;
		align-self: center;
	}

	/* Dissolve the info wrapper so its children join the grid */
	.single-author-info {
		display: contents;
	}

	.single-author-name {
		grid-area: name;
		margin: 0;
	}

	.single-author-bio {
		grid-area: bio;
	}
}

/* Support box */
.single-support {
	background-color: var(--jd-color-dark);
}

.single-support-title {
	color: var(--jd-color-on-dark);
	margin: 0 0 12px;
}

.single-support-desc {
	font-family: var(--jd-font-body);
	font-size: 14px;
	line-height: 1.65;
	color: var(--jd-color-on-dark);
	margin: 0 0 24px;
}

.single-support-btn {
	display: inline-block;
	padding: 10px 24px;
	border: 1.5px solid var(--jd-color-accent);
	border-radius: var(--jd-radius);
	color: var(--jd-color-on-dark);
	background: var(--jd-color-accent);
	font-family: var(--jd-font-body);
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
	transition: background var(--jd-transition);
}

.single-support-btn:hover {
	background: var(--jd-color-accent-hover);
	border-color: var(--jd-color-accent-hover);
}


/* ═══════════════════════════════════════════════════════════
   ARTICLE BODY
═══════════════════════════════════════════════════════════ */

.single-body {
	padding-top: 36px;
	padding-bottom: 36px;
}


/* ═══════════════════════════════════════════════════════════
   POPULAR SIDEBAR — SINGLE POST
═══════════════════════════════════════════════════════════ */

/* Shared heading styles in main.css */
.single-popular-heading,
.single-popular-sidebar > .wp-block-heading,
.single-popular-sidebar > p.single-popular-heading {
	margin-bottom: 24px;
}

.single-popular-sep {
	color: var(--jd-color-text-faint);
	font-size: 11px;
	margin: 0;
	line-height: 1;
	flex-shrink: 0;
}

.single-popular-list .wp-block-post-template {
	margin: 0;
	padding: 0;
}

.single-popular-list .wp-block-post {
	padding: 16px 0;
	border-bottom: 1px solid var(--jd-color-light-gray);
	margin: 0;
}

.single-popular-list .wp-block-post:first-child {
	padding-top: 0;
}

.single-popular-list .wp-block-post:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

/* Card: image left, content right */
.single-popular-card {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 12px;
}

/* Thumbnail */
.single-popular-thumb.wp-block-post-featured-image {
	flex-shrink: 0;
	width: 88px;
	height: 88px;
	border-radius: var(--jd-radius);
	overflow: hidden;
	margin: 0;
}

.single-popular-thumb.wp-block-post-featured-image a,
.single-popular-thumb.wp-block-post-featured-image img {
	display: block;
	width: 88px;
	height: 88px;
	object-fit: cover;
	border-radius: var(--jd-radius);
}

/* Content column */
.single-popular-content {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

/* Category */
.single-popular-badge.wp-block-post-terms,
.single-popular-badge.wp-block-post-terms a {
	font-family: var(--jd-font-body);
	font-size: 11px;
	font-weight: 600;
	color: var(--jd-color-accent);
	text-decoration: none;
	margin: 0;
	line-height: 1.2;
}

/* Title (max 3 lines) & excerpt (max 2 lines) */
.single-popular-title.wp-block-post-title,
.single-popular-excerpt.wp-block-post-excerpt,
.single-popular-excerpt .wp-block-post-excerpt__excerpt {
	margin: 0;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.single-popular-title.wp-block-post-title {
	font-family: var(--jd-font-heading);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--jd-color-text-strong);
	-webkit-line-clamp: 3;
}

.single-popular-title.wp-block-post-title a {
	color: var(--jd-color-text-strong);
	text-decoration: none;
	transition: color var(--jd-transition);
}

.single-popular-title.wp-block-post-title a:hover {
	color: var(--jd-color-accent) !important;
}

.single-popular-excerpt.wp-block-post-excerpt,
.single-popular-excerpt .wp-block-post-excerpt__excerpt {
	font-family: var(--jd-font-body);
	font-size: 12px;
	line-height: 1.5;
	color: var(--jd-color-text-secondary);
	-webkit-line-clamp: 2;
}

/* Date + reading time */
.single-popular-meta {
	gap: 6px;
}

.single-popular-meta .wp-block-post-date,
.single-popular-meta .wp-block-post-date a {
	font-family: var(--jd-font-body);
	font-size: 11px;
	color: var(--jd-color-text-subtle);
	text-decoration: none;
	margin: 0;
	white-space: nowrap;
}

.single-popular-meta .reading-time {
	font-size: 11px;
	color: var(--jd-color-text-subtle);
}


/* ═══════════════════════════════════════════════════════════
   COMMENTS
═══════════════════════════════════════════════════════════ */

.jd-comments {
	font-family: var(--jd-font-body);
	margin-top: 48px;
}

.jd-moderation-notice {
	background: var(--jd-color-light-gray);
	border-left: 3px solid var(--jd-color-accent);
	border-radius: var(--jd-radius);
	padding: 12px 16px;
	margin: 0 0 24px;
	font-family: var(--jd-font-body);
	font-size: 14px;
	color: var(--jd-color-text);
}

/* ── Header ── */

.jd-comments-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 24px;
	padding-bottom: 20px;
	border-bottom: 1px solid var(--jd-color-border);
}

.jd-comments-title {
	font-family: var(--jd-font-heading);
	font-size: 20px;
	font-weight: 700;
	color: var(--jd-color-text);
	margin: 0;
}

.jd-comments-count {
	font-weight: 400;
	color: var(--jd-color-text-muted);
}

.jd-comments-toggle-btn {
	padding: 9px 20px;
	border: 1.5px solid var(--jd-color-accent);
	border-radius: var(--jd-radius);
	background: none;
	color: var(--jd-color-accent);
	font-family: var(--jd-font-body);
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
	transition: background var(--jd-transition), color var(--jd-transition);
	flex-shrink: 0;
}

.jd-comments-toggle-btn:hover,
.jd-comments-toggle-btn.is-open {
	background: var(--jd-color-accent);
	color: var(--jd-color-on-dark);
}

.jd-no-comments {
	color: var(--jd-color-text-muted);
	font-size: 15px;
	margin: 0 0 24px;
}

/* ── Comment card ── */

.jd-comment {
	margin-bottom: 16px;
}

.jd-comment--hidden {
	display: none;
}

.jd-comment-card {
	background: var(--jd-color-surface);
	border-radius: var(--jd-radius-lg);
	padding: 20px 24px;
}

.jd-comment-meta {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}

.jd-avatar {
	width: 44px;
	height: 44px;
	min-width: 44px;
	border-radius: 50%;
	background: var(--jd-color-accent);
	color: var(--jd-color-on-dark);
	font-size: 17px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}

.jd-comment-info {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.jd-comment-author {
	font-size: 15px;
	font-weight: 700;
	color: var(--jd-color-text);
}

.jd-comment-date {
	font-size: 13px;
	color: var(--jd-color-text-muted);
	font-weight: 400;
}

.jd-comment-body {
	font-size: 15px;
	line-height: 1.65;
	color: #333;
	margin-bottom: 12px;
}

.jd-comment-body p {
	margin: 0;
}

.jd-reply-btn {
	background: none;
	border: none;
	color: var(--jd-color-accent);
	font-family: var(--jd-font-body);
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	padding: 0;
}

.jd-reply-btn:hover {
	text-decoration: underline;
}

.jd-comment-replies {
	margin-top: 12px;
	padding-left: 32px;
}

/* ── Load more (same look as archive "Завантажити ще") ── */

.jd-load-more-btn {
	display: block;
	margin-top: 24px;
	margin-left: auto;
	margin-right: auto;
	padding: 10px 40px;
	background: var(--jd-color-bg);
	border: 1px solid var(--jd-color-accent);
	border-radius: var(--jd-radius);
	color: var(--jd-color-accent);
	font-family: var(--jd-font-body);
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
	text-decoration: none;
	transition: background var(--jd-transition), color var(--jd-transition);
}

.jd-load-more-btn:hover,
.jd-load-more-btn:focus {
	background: var(--jd-color-accent);
	color: var(--jd-color-on-dark);
}

/* ── Comment form ── */

.jd-comment-form-wrap {
	display: none;
	margin-top: 32px;
	padding-top: 32px;
	border-top: 1px solid var(--jd-color-border);
}

.jd-comment-form-wrap.is-open {
	display: block;
}

.jd-form-title {
	font-family: var(--jd-font-body);
	font-size: 18px;
	font-weight: 700;
	color: var(--jd-color-text);
	margin: 0 0 20px;
}

.jd-logged-in-as {
	font-family: var(--jd-font-body);
	font-size: 13px;
	color: var(--jd-color-text-muted);
	margin: -12px 0 16px;
}

.jd-reply-notice {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: rgba(var(--jd-color-accent-rgb), 0.07);
	border-left: 3px solid var(--jd-color-accent);
	border-radius: var(--jd-radius);
	padding: 10px 14px;
	margin-bottom: 16px;
	font-size: 13px;
	color: var(--jd-color-accent);
}

.jd-reply-notice[hidden] {
	display: none;
}

.jd-cancel-reply-btn {
	background: none;
	border: none;
	color: var(--jd-color-accent);
	cursor: pointer;
	font-size: 15px;
	padding: 0;
	line-height: 1;
}

.jd-form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	margin-bottom: 16px;
}

.jd-input,
.jd-textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 12px 16px;
	border: 1.5px solid var(--jd-color-border);
	border-radius: var(--jd-radius);
	font-family: var(--jd-font-body);
	font-size: 14px;
	color: #333;
	background: var(--jd-color-bg);
	transition: border-color var(--jd-transition);
}

.jd-input:focus,
.jd-textarea:focus {
	outline: none;
	border-color: var(--jd-color-accent);
}

.jd-input::placeholder,
.jd-textarea::placeholder {
	color: var(--jd-color-icon-muted);
}

.jd-textarea {
	display: block;
	resize: vertical;
	min-height: 120px;
	margin-bottom: 16px;
}

.jd-checkbox-label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 13px;
	color: #666;
	cursor: pointer;
	margin-bottom: 20px;
	line-height: 1.5;
}

.jd-checkbox-label input[type="checkbox"] {
	margin-top: 2px;
	accent-color: var(--jd-color-accent);
	flex-shrink: 0;
	width: 16px;
	height: 16px;
	cursor: pointer;
}

.jd-submit-btn {
	padding: 12px 32px;
	background: var(--jd-color-accent);
	border: none;
	border-radius: var(--jd-radius);
	color: var(--jd-color-on-dark);
	font-family: var(--jd-font-body);
	font-size: 15px;
	font-weight: 500;
	cursor: pointer;
	transition: background var(--jd-transition);
}

.jd-submit-btn:hover {
	background: var(--jd-color-accent-hover);
}


/* ═══════════════════════════════════════════════════════════
   MOBILE
═══════════════════════════════════════════════════════════ */

@media (max-width: 768px) {

	.single-title.wp-block-post-title {
		font-size: 28px;
	}

	.jd-form-row {
		grid-template-columns: 1fr;
	}

	.jd-comment-card {
		padding: 16px;
	}

	.jd-comment-replies {
		padding-left: 16px;
	}
}
