/**
 * S.A.F.E. Academy — site & LearnDash styles
 *
 * Course/Focus Mode/callout/button/reflection styles.
 * Blocksy header menu chrome stays in Customizer Additional CSS.
 *
 * Loaded by the safe-academy-journal plugin on the frontend.
 */

/* ============================================================
   S.A.F.E. ACADEMY — LearnDash Focus Mode + callout system
   Visual system translated from Claude Design exports
   (Lesson block system + Lesson page), mapped onto live
   LearnDash/Blocksy markup. Color roles aligned with Blocksy
   colorPalette (theme_mods_blocksy-child) where they overlap.
   ============================================================ */

:root {
	/* Blocksy palette (authoritative site tokens) */
	--safe-midnight: #0C3347;   /* color1 — authority / chrome */
	--safe-slate:    #3D5A6B;   /* color2 */
	--safe-pacific:  #1E7088;   /* color3 — evidence / interaction */
	--safe-ink:      #1C1B1F;   /* color4 */
	--safe-mist:     #C4DCE3;   /* color5 */
	--safe-courage:  #A84E62;   /* color6 — emotional weight */
	--safe-pearl:    #F6F5F3;   /* color7 */
	--safe-white:    #ffffff;   /* color8 */

	/* Design-only neutrals (Claude Design — no Blocksy equivalent) */
	--safe-ui-navy:     #1f2c3b;  /* Focus Mode header / dark cards */
	--safe-heading:     #3D5A6B; /* Blocksy color2 / site title colour */
	--safe-text:        #565049;
	--safe-muted:       #a49b8e;
	--safe-muted-2:     #7c7469;
	--safe-dune:        #e8e4dd;
	--safe-dune-soft:   #efe9e0;
	--safe-sand:        #fbfaf8;
	--safe-border:      #e4e0d8;
	--safe-border-warm: #d5cfc4;
	--safe-border-cool: #d7dee4;
	--safe-pacific-ui:  #2f6f78;  /* design interactive accent (near color3) */
	--safe-courage-soft:#dd8f99;
	--safe-terracotta:  #9a6b52;
	--safe-terracotta-2:#b08b76;

	--safe-radius:    16px;
	--safe-radius-lg: 20px;
	--safe-content-max: 720px;
}

/* ------------------------------------------------------------
   2. FOCUS MODE — HEADER  (Lesson page: sticky navy bar)
   ------------------------------------------------------------ */
.learndash-wrapper .ld-focus .ld-focus-header {
	background: var(--safe-ui-navy);
	border-bottom: none;
	color: #fff;
}

.learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo,
.learndash-wrapper .ld-focus .ld-focus-header .ld-course-navigation-heading,
.learndash-wrapper .ld-focus .ld-focus-header a {
	color: #cdd7df;
}

.learndash-wrapper .ld-focus .ld-focus-header .ld-progress {
	border-color: rgba(255, 255, 255, 0.14);
}

.learndash-wrapper .ld-focus .ld-focus-header .ld-progress-bar {
	background-color: var(--safe-pacific-ui);
}

.learndash-wrapper .ld-focus .ld-focus-header .ld-progress .ld-progress-percentage {
	color: #c3cfd8;
}

.learndash-wrapper .ld-focus .ld-focus-header .ld-content-action,
.learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu {
	border-color: rgba(255, 255, 255, 0.14);
}


/* ------------------------------------------------------------
   3. FOCUS MODE — SIDEBAR
   ------------------------------------------------------------ */
.learndash-wrapper .ld-focus .ld-focus-sidebar {
	background: var(--safe-sand);
	border-right: 1px solid #eae5dd;
	width: 328px;
}

.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation-heading,
.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-focus-sidebar-wrapper {
	background: transparent;
}

.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-course-navigation-heading h3,
.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-focus-sidebar-wrapper h3 {
	color: var(--safe-heading);
	font-weight: 600;
}

.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-table-list-item {
	border-bottom: none;
	border-radius: 10px;
	margin: 0 0.5rem;
}

.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-table-list-item a {
	color: var(--safe-text);
}

.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-table-list-item.ld-lesson-item.current,
.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-table-list-item.ld-topic-item.current,
.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-is-current-item {
	background: #f1ece4;
}

.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-table-list-item.ld-lesson-item.current a,
.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-table-list-item.ld-topic-item.current a,
.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-is-current-item a {
	color: var(--safe-heading);
	font-weight: 600;
}

.learndash-wrapper .ld-focus .ld-status-icon.ld-status-complete,
.learndash-wrapper .ld-focus .ld-status-icon.ld-status-icon-complete {
	background-color: var(--safe-pacific-ui) !important;
	border-color: var(--safe-pacific-ui) !important;
	color: #ffffff !important;
}
.learndash-wrapper .ld-focus .ld-status-icon.ld-status-complete .ld-icon,
.learndash-wrapper .ld-focus .ld-status-icon.ld-status-complete .ld-icon:before,
.learndash-wrapper .ld-focus .ld-status-icon.ld-status-complete .ld-icon-checkmark:before {
	color: #ffffff !important;
}
.learndash-wrapper .ld-status-icon.ld-status-complete .ld-icon {
	font-size: 12px;
}


/* Week labels in sidebar feel like design: Courage uppercase */
.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-section-heading {
	color: var(--safe-courage);
	font-size: 10px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	font-weight: 600;
}

/* ------------------------------------------------------------
   4. FOCUS MODE — CONTENT COLUMN
   ------------------------------------------------------------ */
.learndash-wrapper .ld-focus .ld-focus-content {
	max-width: var(--safe-content-max);
	margin: 0 auto;
	padding: 4.5rem 2.5rem 3rem;
	font-size: 1.125rem;
	line-height: 1.85;
	color: var(--safe-text);
	background: transparent;
}

.learndash-wrapper .ld-focus,
.learndash-wrapper .ld-focus .ld-focus-main {
	background: var(--safe-pearl);
}
.learndash-wrapper .ld-focus .ld-focus-content {
	background: transparent;
	color: var(--safe-text);
}

/*
 * Heading type: Zalando Sans SemiExpanded (matches Blocksy H1–H3).
 * Clear scale so H2 and H3 never look the same size.
 * Rethink Sans stays for body + UI labels (NOTE/AUDIO/eyebrows in caps).
 */
.learndash-wrapper .ld-focus .ld-focus-content h1,
.learndash-wrapper .ld-focus .ld-focus-content h2,
.learndash-wrapper .ld-focus .ld-focus-content h3,
.learndash-wrapper .ld-focus .ld-focus-content .wp-block-heading,
body.single-sfwd-courses .entry-content h1,
body.single-sfwd-courses .entry-content h2,
body.single-sfwd-courses .entry-content h3,
body.single-sfwd-courses .entry-content .wp-block-heading,
body.single-sfwd-lessons .entry-content h1,
body.single-sfwd-lessons .entry-content h2,
body.single-sfwd-lessons .entry-content h3,
body.single-sfwd-topic .entry-content h1,
body.single-sfwd-topic .entry-content h2,
body.single-sfwd-topic .entry-content h3 {
	color: var(--safe-heading);
	font-family: "Zalando Sans SemiExpanded", sans-serif !important;
	font-weight: 400;
	letter-spacing: -0.015em;
	text-transform: none;
}

.learndash-wrapper .ld-focus .ld-focus-content h1,
body.single-sfwd-courses .entry-content h1,
body.single-sfwd-lessons .entry-content h1,
body.single-sfwd-topic .entry-content h1 {
	font-size: clamp(2rem, 4vw, 2.75rem);
	line-height: 1.12;
}

.learndash-wrapper .ld-focus .ld-focus-content h2,
body.single-sfwd-courses .entry-content h2,
body.single-sfwd-lessons .entry-content h2,
body.single-sfwd-topic .entry-content h2 {
	font-size: clamp(1.65rem, 3.2vw, 2.5rem); /* ~40px desktop — theme H2 */
	line-height: 1.25;
	margin-top: 1.75em;
	margin-bottom: 0.55em;
}

.learndash-wrapper .ld-focus .ld-focus-content h3,
body.single-sfwd-courses .entry-content h3,
body.single-sfwd-lessons .entry-content h3,
body.single-sfwd-topic .entry-content h3 {
	font-size: clamp(1.15rem, 2vw, 1.5rem); /* 24px — theme H3 */
	line-height: 1.4;
	margin-top: 1.35em;
	margin-bottom: 0.45em;
}

/* UI labels / eyebrows stay Rethink + caps (not Zalando headings) */
.learndash-wrapper .ld-focus .ld-focus-content .callout > p:first-child strong,
body.single-sfwd-courses .entry-content .callout > p:first-child strong,
.safe-routes__eyebrow,
.safe-chain__eyebrow,
.safe-warmup__eyebrow,
.safe-assessment .safe-assessment-eyebrow {
	font-family: "Rethink Sans", sans-serif !important;
}

.learndash-wrapper .ld-focus .ld-focus-content h2.section-heading {
	position: relative;
	padding-bottom: 0.4em;
}
.learndash-wrapper .ld-focus .ld-focus-content h2.section-heading::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 56px;
	height: 3px;
	background: var(--safe-courage);
}

/* Courage underline under topic title when present as first h1 */
.learndash-wrapper .ld-focus .ld-focus-content > .ld-content-title h1::after,
.learndash-wrapper .ld-focus .ld-focus-content .ld-topic-title::after {
	content: "";
	display: block;
	width: 56px;
	height: 3px;
	background: var(--safe-courage);
	margin-top: 1.1rem;
	margin-bottom: 0.5rem;
}

.ld-focus-content .learndash-wrapper .ld-breadcrumbs,
.learndash-wrapper .ld-focus .ld-breadcrumbs {
	border-radius: 0;
	background: transparent;
	border: none;
	color: var(--safe-muted);
	font-size: 0.7rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	padding-left: 0;
}

.learndash-wrapper .ld-focus .ld-focus-content p {
	margin-bottom: 1.4rem;
}

/* ------------------------------------------------------------
   5. CALLOUTS
   Shared rhythm (radius, padding, label). Surfaces differ by role
   so a note, a case, a crisis line and audio are not the same tile.
   ------------------------------------------------------------ */
.wp-block-group.callout,
.callout {
	background: var(--safe-sand);
	border: 1px solid var(--safe-border-cool);
	border-radius: 18px;
	padding: 1.5rem 1.85rem 1.85rem;
	margin: 2.5rem 0;
	overflow: hidden;
	color: var(--safe-text);
	box-shadow: none;
}

.wp-block-group.callout > *:first-child,
.callout > *:first-child {
	margin-top: 0;
}
.wp-block-group.callout > *:last-child,
.callout > *:last-child {
	margin-bottom: 0;
}

.wp-block-group.callout > p:first-child > strong:first-child,
.callout > p:first-child > strong:first-child,
.wp-block-group.callout > p:first-child strong:only-child,
.callout strong:first-child {
	display: inline-block;
	font-size: 1rem;
	letter-spacing: normal;
	text-transform: uppercase;
	font-weight: 600;
	margin-bottom: 0.85rem;
	line-height: 1.4;
	color: var(--safe-slate, #3D5A6B);
}

.wp-block-group.callout p,
.callout p {
	color: var(--safe-text);
	line-height: 1.8;
}

.wp-block-group.callout a,
.callout a {
	color: var(--safe-courage);
}

/* Audio / on-camera keep the original sand tool shell */
.callout-ayleen,
.callout-audio {
	background: var(--safe-sand);
	border: 1px solid var(--safe-border-cool);
	border-radius: 18px;
	padding: 1.5rem 1.85rem 1.85rem;
	color: var(--safe-text);
}

.callout-ayleen > p:first-child > strong:first-child,
.callout-ayleen strong:first-child,
.callout-mindful > p:first-child > strong:first-child,
.callout-mindful strong:first-child,
.callout-audio > p:first-child > strong:first-child,
.callout-audio strong:first-child,
.callout-onyourdesk > p:first-child > strong:first-child,
.callout-onyourdesk strong:first-child,
.callout-keytakeaways > p:first-child > strong:first-child,
.callout-keytakeaways strong:first-child,
.callout-science > p:first-child > strong:first-child,
.callout-science strong:first-child,
.callout-whattosay > p:first-child > strong:first-child,
.callout-whattosay strong:first-child,
.callout-scenario > p:first-child > strong:first-child,
.callout-scenario strong:first-child,
.callout-keypoints > p:first-child > strong:first-child,
.callout-keypoints strong:first-child,
.callout-case > p:first-child > strong:first-child,
.callout-case strong:first-child,
.callout-mythvsfact > p:first-child > strong:first-child,
.callout-mythvsfact strong:first-child,
.callout-knowledgecheck > p:first-child > strong:first-child,
.callout-knowledgecheck strong:first-child,
.callout-openingnote > p:first-child > strong:first-child,
.callout-openingnote strong:first-child,
.callout-keyterm > p:first-child > strong:first-child,
.callout-keyterm strong:first-child,
.callout-exercise > p:first-child > strong:first-child,
.callout-exercise strong:first-child,
.callout-modelanswer > p:first-child > strong:first-child,
.callout-modelanswer strong:first-child,
.callout-carrythese > p:first-child > strong:first-child,
.callout-carrythese strong:first-child,
.callout-crisis > p:first-child > strong:first-child,
.callout-crisis strong:first-child {
	color: var(--safe-slate, #3D5A6B);
}

/* Role surfaces */
.wp-block-group.callout.callout-openingnote,
.callout-openingnote {
	background: transparent;
	border: none;
	border-left: 3px solid var(--safe-slate, #3D5A6B);
	border-radius: 0;
	padding: 0.15rem 0 0.15rem 1rem;
	margin: 1.25rem 0 1.5rem;
	overflow: visible;
}

/* Feedback: no left rule on “What this course asks of you” */
.wp-block-group.callout.callout-openingnote.callout-plain,
.callout-openingnote.callout-plain {
	border-left: none;
	padding-left: 0;
}

/* Side-by-side compare cards (myth-style), e.g. two frauds in 1.5 */
.safe-compare__grid,
.ld-focus-content .safe-compare__grid,
.learndash-wrapper .safe-compare__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
	margin: 0.85rem 0 1rem;
}

.safe-compare__card,
.ld-focus-content .safe-compare__card,
.learndash-wrapper .safe-compare__card {
	display: block;
	padding: 1rem 1.15rem;
	border-radius: 14px;
	background: #fff;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	font-size: 0.98rem;
	line-height: 1.55;
	color: var(--safe-text, #565049);
	box-sizing: border-box;
}

.safe-compare__card strong {
	display: block;
	margin-bottom: 0.45rem;
	font-size: 0.8125rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--safe-pacific-ui, #2f6f78);
}

@media (max-width: 720px) {
	.safe-compare__grid,
	.ld-focus-content .safe-compare__grid,
	.learndash-wrapper .safe-compare__grid {
		grid-template-columns: 1fr;
	}
}
.callout-openingnote > p:first-child > strong:first-child,
.callout-openingnote strong:first-child {
	color: var(--safe-slate, #3D5A6B);
	font-size: 1rem !important;
	letter-spacing: normal;
	margin-bottom: 0.35rem;
	line-height: 1.4;
}
/* Same body size everywhere (Focus Mode + course pages). */
.callout-openingnote p,
.ld-focus-content .wp-block-group.callout.callout-openingnote p,
.learndash-wrapper .wp-block-group.callout.callout-openingnote p,
.single-sfwd-courses .wp-block-group.callout.callout-openingnote p,
.single-sfwd-lessons .wp-block-group.callout.callout-openingnote p,
.single-sfwd-topic .wp-block-group.callout.callout-openingnote p {
	font-size: 1.125rem !important;
	line-height: 1.85 !important;
	color: var(--safe-text, #565049) !important;
}
.callout-openingnote > p:first-child {
	margin-bottom: 0.35rem;
}

/* Info panels with CAPS titles (WHAT S.A.F.E. HAS MEANT, routes, HOW THIS WORKS, …)
   — same sand shell as AUDIO so the title + body read as one block. */
.wp-block-group.callout.callout-keypoints,
.callout-keypoints,
.wp-block-group.callout.callout-keytakeaways,
.callout-keytakeaways,
.wp-block-group.callout.callout-carrythese,
.callout-carrythese {
	background: var(--safe-sand);
	border: 1px solid var(--safe-border-cool);
	border-radius: 18px;
	padding: 1.5rem 1.85rem 1.85rem;
	margin: 2.5rem 0;
	overflow: hidden;
	color: var(--safe-text);
}

.wp-block-group.callout.callout-mindful,
.callout-mindful {
	background: #dcecef;
	border: 1px solid var(--safe-mist, #C4DCE3);
	border-radius: 18px;
	padding: 1.65rem 1.8rem 1.75rem;
}

.wp-block-group.callout.callout-science,
.callout-science,
.wp-block-group.callout.callout-keyterm,
.callout-keyterm {
	background: #f3f7f8;
	border: 1px solid var(--safe-border-cool);
	border-left: 3px solid var(--safe-pacific, #1E7088);
	border-radius: 18px;
	padding: 1.35rem 1.5rem 1.5rem 1.35rem;
}

.wp-block-group.callout.callout-case,
.callout-case,
.wp-block-group.callout.callout-mythvsfact,
.callout-mythvsfact {
	background: #fff;
	border: 1px solid var(--safe-border-warm, #d5cfc4);
	border-radius: 18px;
	padding: 1.45rem 1.6rem 1.6rem;
}

.wp-block-group.callout.callout-exercise,
.callout-exercise {
	background: #fff;
	border: 1px solid var(--safe-border-cool);
	border-left: 3px solid var(--safe-pacific-ui, #2f6f78);
	border-radius: 18px;
	padding: 1.4rem 1.55rem 1.55rem 1.4rem;
}

.wp-block-group.callout.callout-modelanswer,
.callout-modelanswer {
	background: var(--safe-dune-soft, #efe9e0);
	border: 1px solid var(--safe-dune, #e8e4dd);
	border-radius: 18px;
}

/* Model answer — collapsed until the learner chooses to open it */
.callout-modelanswer .safe-modelanswer,
.safe-modelanswer {
	margin: 0;
	border: none;
	background: transparent;
	padding: 0;
}

.callout-modelanswer .safe-modelanswer > summary,
.safe-modelanswer > summary {
	cursor: pointer;
	list-style: none;
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: normal;
	text-transform: uppercase;
	color: var(--safe-slate, #3D5A6B);
	padding: 0.15rem 0;
	line-height: 1.4;
}

.callout-modelanswer .safe-modelanswer > summary::-webkit-details-marker,
.safe-modelanswer > summary::-webkit-details-marker {
	display: none;
}

.callout-modelanswer .safe-modelanswer > summary::before,
.safe-modelanswer > summary::before {
	content: "▸ ";
	display: inline-block;
	transition: transform 0.15s ease;
}

.callout-modelanswer .safe-modelanswer[open] > summary::before,
.safe-modelanswer[open] > summary::before {
	transform: rotate(90deg);
}

.callout-modelanswer .safe-modelanswer[open] > summary,
.safe-modelanswer[open] > summary {
	margin-bottom: 0.65rem;
}

.wp-block-group.callout.callout-whattosay,
.callout-whattosay {
	background: #fff;
	border: 1px solid var(--safe-border-cool);
	border-radius: 18px;
}

.wp-block-group.callout.callout-onyourdesk,
.callout-onyourdesk {
	background: transparent;
	border: none;
	border-radius: 0;
	padding-left: 0;
	padding-right: 0;
	/* Sit tight under the “On your desk…” heading (base .callout uses 2.5rem). */
	margin-top: 0.5rem;
	margin-bottom: 2rem;
	padding-top: 0;
	padding-bottom: 0;
}

.learndash-wrapper .ld-focus .ld-focus-content h3 + .wp-block-group.callout.callout-onyourdesk,
body.single-sfwd-courses .entry-content h3 + .wp-block-group.callout.callout-onyourdesk,
body.single-sfwd-lessons .entry-content h3 + .wp-block-group.callout.callout-onyourdesk,
body.single-sfwd-topic .entry-content h3 + .wp-block-group.callout.callout-onyourdesk {
	margin-top: 0.35rem;
}

.wp-block-group.callout.callout-scenario,
.callout-scenario,
.wp-block-group.callout.callout-knowledgecheck,
.callout-knowledgecheck {
	background: var(--safe-pearl, #F6F5F3);
	border: 1px solid var(--safe-border-cool);
	border-radius: 18px;
}

.callout-knowledgecheck > p:first-child {
	background: transparent;
	border: none;
	margin: 0 0 0.5rem;
	padding: 0;
	color: var(--safe-text);
}

/* On your desk — three role columns */
.wp-block-group.callout.callout-onyourdesk,
.callout-onyourdesk {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.85rem 0.95rem;
	align-items: stretch;
}
.callout-onyourdesk > p.desk-col,
.callout-onyourdesk > p:nth-child(-n+3) {
	background: #fff;
	border: 1px solid var(--safe-border-cool);
	border-radius: 12px;
	padding: 1rem 1.05rem 1.1rem;
	margin: 0;
	color: var(--safe-text);
	font-size: 0.95rem;
	line-height: 1.6;
}
.callout-onyourdesk > p.desk-col br,
.callout-onyourdesk > p:nth-child(-n+3) br {
	display: none;
}
.callout-onyourdesk > p.desk-col > strong,
.callout-onyourdesk > p:nth-child(-n+3) > strong,
.wp-block-group.callout.callout-onyourdesk > p.desk-col > strong,
.wp-block-group.callout.callout-onyourdesk > p:nth-child(-n+3) > strong,
.wp-block-group.callout.callout-onyourdesk > p:first-child > strong:first-child,
.ld-focus-content .wp-block-group.callout.callout-onyourdesk > p > strong,
.learndash-wrapper .wp-block-group.callout.callout-onyourdesk > p.desk-col > strong {
	display: block;
	font-size: 1rem;
	letter-spacing: normal;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--safe-slate, #3D5A6B);
	margin: 0 0 0.55rem;
	line-height: 1.35;
	min-height: 2.7em;
}
.callout-onyourdesk > p.desk-foot,
.callout-onyourdesk > p:last-child {
	grid-column: 1 / -1;
	background: transparent;
	border: none;
	padding: 0.15rem 0.1rem 0;
	margin: 0;
	color: var(--safe-muted-2, #7c7469);
	font-size: 0.9rem;
	line-height: 1.55;
}
.callout-onyourdesk > p.desk-foot em,
.callout-onyourdesk > p:last-child em {
	font-style: italic;
	font-size: inherit;
	letter-spacing: 0;
	text-transform: none;
	font-weight: 400;
	color: inherit;
}

/* What to say — Don’t / Try pairs */
.callout-whattosay > p:first-child {
	background: transparent;
	border: none;
	margin: 0 0 0.85rem;
	padding: 0;
	color: var(--safe-text);
}
.callout-whattosay > p.say-pair {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 0.75rem;
	margin: 0 0 0.75rem;
	padding: 0;
	border: none;
}
.callout-whattosay > p.say-pair:last-child {
	margin-bottom: 0;
}
.callout-whattosay .say-dont,
.callout-whattosay .say-try {
	display: block;
	padding: 0.85rem 0.95rem 0.95rem;
	border-radius: 12px;
	font-size: 0.95rem;
	line-height: 1.6;
	color: var(--safe-text);
}
.callout-whattosay .say-dont {
	background: #faf6f6;
	border: 1px solid #ead9dc;
	border-left: 3px solid var(--safe-courage-soft, #dd8f99);
}
.callout-whattosay .say-try {
	background: #f4f8f8;
	border: 1px solid var(--safe-border-cool);
	border-left: 3px solid var(--safe-pacific-ui, #2f6f78);
}
.callout-whattosay .say-dont strong,
.callout-whattosay .say-try strong {
	display: block;
	font-size: 0.65rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 600;
	margin: 0 0 0.4rem;
	line-height: 1.3;
}
.callout-whattosay .say-dont strong {
	color: var(--safe-courage, #A84E62);
}
.callout-whattosay .say-try strong {
	color: var(--safe-pacific-ui, #2f6f78);
}
.callout-whattosay > p:not(:first-child):not(.say-pair) {
	margin: 0.85rem 0 0;
	padding: 0;
	border: none;
	color: var(--safe-muted-2, #7c7469);
	font-size: 0.95rem;
	line-height: 1.65;
}

/* Mindful: cool mist so it reads against the lesson sand */
.callout-mindful p {
	font-style: italic;
}
.callout-mindful p:first-child {
	font-style: normal;
}

/* Lists inside shared shell */
.callout-keytakeaways ul,
.callout-keytakeaways ol,
.callout-keypoints ul,
.callout-keypoints ol {
	margin: 0.25rem 0 0;
	padding-left: 1.1rem;
}
.callout-keytakeaways li,
.callout-keypoints li {
	margin-bottom: 0.65rem;
	line-height: 1.65;
	color: var(--safe-text);
}
.callout-keytakeaways li::marker,
.callout-keypoints li::marker {
	color: var(--safe-pacific-ui);
}

.callout-scenario ul,
.callout-scenario ol,
.callout-knowledgecheck ul,
.callout-knowledgecheck ol {
	list-style: none;
	padding: 0;
	margin: 1rem 0 0;
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
}
.callout-scenario li,
.callout-knowledgecheck li {
	border: 1px solid var(--safe-border);
	border-radius: 12px;
	padding: 1rem 1.15rem;
	background: #fff;
	color: var(--safe-text);
	line-height: 1.55;
	font-size: 0.98rem;
}
.callout-scenario em,
.callout-knowledgecheck em {
	display: block;
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid #e6ecef;
	color: #7c9aa0;
	font-style: italic;
	font-size: 0.95rem;
}

.callout-case::before {
	display: none;
}

.callout-case > p:not(:first-child) {
	margin: 0 0 1rem;
	padding: 0.15rem 0 0.15rem 0.95rem;
	border-left: 2px solid var(--safe-dune, #e8e4dd);
}
.callout-case > p:not(:first-child):last-child {
	margin-bottom: 0;
}
.callout-case > p:not(:first-child) > strong:first-child {
	display: block;
	font-size: 0.8rem;
	letter-spacing: 0.02em;
	text-transform: none;
	font-weight: 600;
	color: var(--safe-pacific-ui, #2f6f78);
	margin: 0 0 0.35rem;
	line-height: 1.4;
}
.callout-case em {
	display: block;
	margin-top: 0.55rem;
	font-size: 0.92rem;
	color: var(--safe-muted-2, #7c7469);
}

/* Stats: same family, tile layout */
.callout-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	background: transparent;
	border: none;
	padding: 0;
	border-radius: 0;
}
.callout-stats > p {
	flex: 1 1 200px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0.65rem;
	text-align: left;
	background: var(--safe-sand);
	border: 1px solid var(--safe-border-cool);
	border-radius: 18px;
	padding: 1.5rem 1.35rem;
	margin: 0;
	color: var(--safe-muted-2);
	font-size: 0.95rem;
	line-height: 1.45;
	box-sizing: border-box;
}
.callout-stats > p strong {
	display: block;
	font-family: "Zalando Sans SemiExpanded", sans-serif;
	font-size: clamp(2.75rem, 5vw, 3.75rem);
	letter-spacing: -0.03em;
	line-height: 1;
	color: var(--safe-pacific-ui);
	margin: 0;
	font-weight: 400;
	text-transform: none;
	text-align: left;
}

/* Video + spoken script (portrait player beside transcript) */
.callout-ayleen.callout-ayleen--split {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.15rem 1.75rem;
	align-items: start;
}

.callout-ayleen.callout-ayleen--split > p:first-child {
	grid-column: 1 / -1;
	margin-bottom: 0;
}

.callout-ayleen .callout-ayleen__media,
.callout-ayleen .callout-ayleen__script,
.callout-ayleen .wp-block-group.callout-ayleen__media,
.callout-ayleen .wp-block-group.callout-ayleen__script {
	background: transparent;
	border: none;
	border-radius: 0;
	padding: 0;
	margin: 0;
	box-shadow: none;
	overflow: visible;
}

.callout-ayleen .wp-block-embed,
.callout-ayleen .wp-block-embed__wrapper,
.callout .wp-block-embed.is-type-video,
.callout .wp-block-embed.is-type-video .wp-block-embed__wrapper {
	background: var(--safe-ui-navy);
	border-radius: 14px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.12);
}
.callout-ayleen .wp-block-embed,
.callout .wp-block-embed.is-type-video {
	margin: 0;
	padding: 0;
}
.callout-ayleen .wp-block-embed iframe,
.callout .wp-block-embed.is-type-video iframe {
	display: block;
}
.callout-ayleen .wp-block-video {
	display: flex;
	justify-content: center;
	width: 100%;
	max-width: 100%;
	margin: 0;
	background: #000;
	border-radius: 14px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.12);
	padding: 0;
}
.callout-ayleen .wp-block-video video {
	display: block;
	width: 100% !important;
	height: auto !important;
	max-width: 100%;
	max-height: min(82vh, 720px);
	aspect-ratio: auto !important;
	object-fit: contain;
	background: #000;
}

.safe-script {
	background: var(--safe-pearl, #F6F5F3);
	border: 1px solid var(--safe-border, #e4e0d8);
	border-radius: 14px;
	padding: 1rem 1.1rem 1.15rem;
}

.safe-script__speaker {
	display: block !important;
	font-size: 0.68rem !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	font-weight: 600 !important;
	font-style: normal !important;
	color: var(--safe-pacific-ui, #2f6f78) !important;
	margin: 0 0 0.85rem !important;
	line-height: 1.4 !important;
}

.callout-ayleen .safe-script__speaker,
.callout-ayleen .safe-script__line {
	text-transform: none;
}

.callout-ayleen .safe-script__speaker {
	text-transform: uppercase !important;
}

.safe-script__line {
	margin: 0 0 0.4rem !important;
	padding: 0 0 0 0.9rem;
	border-left: 2px solid var(--safe-mist, #C4DCE3);
	font-size: 0.98rem;
	line-height: 1.5;
	color: var(--safe-heading, #26384a);
	font-style: normal;
}

.safe-script__line:last-child {
	margin-bottom: 0 !important;
}

@media (min-width: 782px) {
	.callout-ayleen.callout-ayleen--split:has(.callout-ayleen__media) {
		grid-template-columns: minmax(0, 30%) minmax(0, 70%);
	}

	.callout-ayleen.callout-ayleen--split .callout-ayleen__media {
		grid-column: 1;
		grid-row: 2;
	}

	.callout-ayleen.callout-ayleen--split .callout-ayleen__script {
		grid-column: 2;
		grid-row: 2;
		max-height: min(82vh, 720px);
		overflow-y: auto;
	}

	.callout-ayleen .wp-block-video video {
		max-height: min(82vh, 720px);
	}
}

/* Caption: not a framed callout */
.callout-caption,
.wp-block-group.callout-caption {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
	margin-top: -1.25rem;
	margin-bottom: 2rem;
	font-size: 0.875rem;
	line-height: 1.6;
	color: #9a9186;
	font-style: italic;
}
.callout-caption strong {
	display: inline !important;
	font-size: inherit !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	color: inherit !important;
	font-style: italic;
	font-weight: 500;
	margin: 0 !important;
}

/* ------------------------------------------------------------
   6. QUIZZES (WpProQuiz)
   ------------------------------------------------------------ */
.wpProQuiz_content {
	border: 1px solid var(--safe-border-cool);
	border-radius: var(--safe-radius-lg);
	padding: 1.75rem;
	background: var(--safe-white);
}

.wpProQuiz_time_limit,
.wpProQuiz_resultsList,
.wpProQuiz_catOverview,
.wpProQuiz_response + .wpProQuiz_questionListItem input[name="next"],
.safe-quiz--mcq input[name="next"],
.safe-quiz--essay input[name="check"],
.safe-quiz--mcq .wpProQuiz_text,
.safe-quiz--essay .wpProQuiz_text,
.safe-quiz--mcq .wpProQuiz_button[name="back"],
.safe-quiz--essay .wpProQuiz_button[name="back"],
.safe-quiz--mcq .wpProQuiz_button[name="review"],
.safe-quiz--essay .wpProQuiz_button[name="review"],
.safe-quiz--mcq .wpProQuiz_button[name="restartQuiz"],
.safe-quiz--essay .wpProQuiz_button[name="restartQuiz"],
.safe-quiz--mcq .wpProQuiz_button[name="reShowQuestion"],
.safe-quiz--essay .wpProQuiz_button[name="reShowQuestion"],
.safe-quiz--mcq .wpProQuiz_button[name="startQuiz"],
.safe-quiz--essay .wpProQuiz_button[name="startQuiz"],
.safe-quiz--mcq .wpProQuiz_button[name="endInfopage"],
.safe-quiz--essay .wpProQuiz_button[name="endInfopage"],
.safe-quiz--mcq .wpProQuiz_button[name="endQuizSummary"],
.safe-quiz--essay .wpProQuiz_button[name="endQuizSummary"],
.safe-quiz--mcq .quiz_continue_link,
.safe-quiz--essay .quiz_continue_link,
.wpProQuiz_points,
.wpProQuiz_quiz_time {
	display: none !important;
}

.safe-assessment .wpProQuiz_text,
.safe-assessment .wpProQuiz_button[name="startQuiz"],
.safe-assessment .wpProQuiz_button[name="back"],
.safe-assessment .wpProQuiz_button[name="next"],
.safe-assessment .wpProQuiz_button[name="review"],
.safe-assessment .wpProQuiz_button[name="restartQuiz"],
.safe-assessment .wpProQuiz_button[name="checkSingle"],
.safe-assessment input[name="startQuiz"],
.safe-assessment input[name="back"],
.safe-assessment input[name="next"],
.safe-assessment input[name="review"],
.safe-assessment input[name="restartQuiz"],
.safe-assessment input[name="checkSingle"] {
	display: inline-block !important;
}

.safe-quiz-saved {
	margin: 1rem 0 0;
	padding: 0.85rem 1rem;
	background: var(--safe-sand);
	border-radius: 12px;
	color: var(--safe-text);
}

.ld-alert,
.learndash-wrapper .ld-alert {
	background: var(--safe-sand);
	border: 1px solid var(--safe-border-cool);
	border-radius: 18px;
	color: var(--safe-text);
}
/* Quiz buttons: see § LearnDash buttons (Blocksy-aligned) */


/* ------------------------------------------------------------
   7. RESPONSIVE
   ------------------------------------------------------------ */
@media (max-width: 960px) {
	.learndash-wrapper .ld-focus .ld-focus-sidebar {
		width: 280px;
	}
}

@media (max-width: 767px) {
	.learndash-wrapper .ld-focus .ld-focus-content {
		padding: 2.25rem 1.15rem 2rem;
	}
	.wp-block-group.callout,
	.callout {
		padding: 1.25rem 1.25rem;
	}
	.callout-stats {
		gap: 0.75rem;
	}
	.callout-stats > p {
		flex: 1 1 100%;
		padding: 1.25rem 1.15rem;
	}
	.callout-stats > p strong {
		font-size: clamp(2.5rem, 8vw, 3.25rem);
	}
	.wp-block-group.callout.callout-openingnote,
	.callout-openingnote {
		padding: 0.15rem 0 0.15rem 1rem;
	}
	.wp-block-group.callout.callout-keypoints,
	.callout-keypoints,
	.wp-block-group.callout.callout-keytakeaways,
	.callout-keytakeaways,
	.wp-block-group.callout.callout-carrythese,
	.callout-carrythese {
		padding: 1.35rem 1.45rem 1.5rem;
	}
	.wp-block-group.callout.callout-onyourdesk,
	.callout-onyourdesk {
		grid-template-columns: 1fr;
	}
	.callout-onyourdesk > p.desk-col > strong,
	.callout-onyourdesk > p:nth-child(-n+3) > strong {
		min-height: 0;
	}
	.callout-whattosay > p.say-pair {
		grid-template-columns: 1fr;
	}
}


/* ------------------------------------------------------------
   8. SPECIFICITY GUARD
   LearnDash/Blocksy must not flatten every callout back to sand.
   Audio + on-camera keep the original tool shell; other roles win below.
   ------------------------------------------------------------ */
:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-audio,
:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-ayleen {
	background-color: var(--safe-sand) !important;
	background-image: none !important;
	border: 1px solid var(--safe-border-cool) !important;
	border-radius: 18px !important;
	color: var(--safe-text);
	padding: 1.5rem 1.85rem 1.85rem !important;
}

:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-openingnote {
	background: transparent !important;
	border: none !important;
	border-left: 3px solid var(--safe-slate, #3D5A6B) !important;
	border-radius: 0 !important;
	padding: 0.15rem 0 0.15rem 1rem !important;
}

:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-keypoints,
:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-keytakeaways,
:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-carrythese {
	background-color: var(--safe-sand) !important;
	background-image: none !important;
	border: 1px solid var(--safe-border-cool) !important;
	border-radius: 18px !important;
	padding: 1.5rem 1.85rem 1.85rem !important;
	color: var(--safe-text);
}

:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-mindful {
	background: #dcecef !important;
	border: 1px solid var(--safe-mist, #C4DCE3) !important;
	border-radius: 18px !important;
	padding: 1.65rem 1.8rem 1.75rem !important;
}

:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-science,
:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-keyterm {
	background: #f3f7f8 !important;
	border: 1px solid var(--safe-border-cool) !important;
	border-left: 3px solid var(--safe-pacific, #1E7088) !important;
	border-radius: 18px !important;
	padding: 1.35rem 1.5rem 1.5rem 1.35rem !important;
}

:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-case,
:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-mythvsfact {
	background: #fff !important;
	border: 1px solid var(--safe-border-warm, #d5cfc4) !important;
	border-radius: 18px !important;
	padding: 1.45rem 1.6rem 1.6rem !important;
}

:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-exercise {
	background: #fff !important;
	border: 1px solid var(--safe-border-cool) !important;
	border-left: 3px solid var(--safe-pacific-ui, #2f6f78) !important;
	border-radius: 18px !important;
	padding: 1.4rem 1.55rem 1.55rem 1.4rem !important;
}

:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-modelanswer {
	background: var(--safe-dune-soft, #efe9e0) !important;
	border: 1px solid var(--safe-dune, #e8e4dd) !important;
}

:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-whattosay {
	background: #fff !important;
	border: 1px solid var(--safe-border-cool) !important;
}

:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-onyourdesk {
	background: transparent !important;
	border: none !important;
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.85rem 0.95rem;
	padding-left: 0 !important;
	padding-right: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin-top: 0.5rem !important;
}

:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-scenario,
:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-knowledgecheck {
	background: var(--safe-pearl, #F6F5F3) !important;
	border: 1px solid var(--safe-border-cool) !important;
}

.ld-focus-content .wp-block-group.callout.callout-stats,
.learndash-wrapper .wp-block-group.callout.callout-stats,
.single-sfwd-courses .wp-block-group.callout.callout-stats,
.single-sfwd-lessons .wp-block-group.callout.callout-stats,
.single-sfwd-topic .wp-block-group.callout.callout-stats {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	border-radius: 0 !important;
}

.ld-focus-content .wp-block-group.callout-caption,
.learndash-wrapper .wp-block-group.callout-caption,
.ld-focus-content .callout-caption,
.single-sfwd-courses .callout-caption,
.single-sfwd-lessons .callout-caption,
.single-sfwd-topic .callout-caption {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	border-radius: 0 !important;
}

.ld-focus-content .wp-block-group.callout.callout-openingnote > p:first-child > strong:first-child,
.learndash-wrapper .wp-block-group.callout.callout-openingnote > p:first-child > strong:first-child {
	color: var(--safe-slate, #3D5A6B) !important;
}

.ld-focus-content .wp-block-group.callout > p:first-child > strong:first-child,
.learndash-wrapper .wp-block-group.callout > p:first-child > strong:first-child,
.single-sfwd-courses .wp-block-group.callout > p:first-child > strong:first-child {
	color: var(--safe-slate, #3D5A6B) !important;
}

@media (max-width: 767px) {
	:is(.ld-focus-content, .learndash-wrapper, .single-sfwd-courses, .single-sfwd-lessons, .single-sfwd-topic) .wp-block-group.callout.callout-onyourdesk,
	.wp-block-group.callout.callout-onyourdesk,
	.callout-onyourdesk {
		grid-template-columns: 1fr;
	}
	.callout-onyourdesk > p.desk-col > strong,
	.callout-onyourdesk > p:nth-child(-n+3) > strong {
		min-height: 0;
	}
}

.ld-focus-content .wp-block-group.callout p,
.learndash-wrapper .wp-block-group.callout p,
.single-sfwd-courses .wp-block-group.callout p {
	color: var(--safe-text);
}

/* Focus chrome — win against LD defaults */
.learndash-wrapper .ld-focus .ld-focus-header {
	background-color: var(--safe-ui-navy) !important;
}
.learndash-wrapper .ld-focus .ld-focus-sidebar {
	background-color: var(--safe-sand) !important;
	border-right-color: #eae5dd !important;
}
.learndash-wrapper .ld-focus .ld-focus-content {
	max-width: var(--safe-content-max) !important;
}


/* ============================================================
   LEARNDASH BUTTONS — aligned with Blocksy theme buttons
   Font/size/padding/colors via Blocksy CSS variables; radius 50px
   (header CTA). No borders, no outlines, no leading/trailing icons.
   ============================================================ */
.learndash-wrapper .ld-button,
.learndash-wrapper a.ld-button,
.learndash-wrapper #btn-join,
.learndash-wrapper .btn-join,
.learndash-wrapper .learndash_mark_complete_button,
.learndash-wrapper input.learndash_mark_complete_button,
.learndash-wrapper .sfwd-mark-complete input[type="submit"],
.learndash-wrapper .ld-expand-button,
.learndash-wrapper .ld-expand-button.ld-primary-background,
.learndash-wrapper .ld-expand-button.ld-button-alternate,
.learndash-wrapper .wpProQuiz_button,
.learndash-wrapper .wpProQuiz_button:not([disabled]),
.learndash-wrapper .ld-login-modal input[type="submit"],
.learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete input[type="submit"],
.learndash-wrapper .ld-focus .ld-focus-header .ld-content-actions .ld-button,
.ld-focus-content .safe-reflection__submit,
.learndash-wrapper .safe-reflection__submit,
.ld-focus-content .safe-journal-delete-all__trigger,
.learndash-wrapper .safe-journal-delete-all__trigger,
.ld-focus-content .safe-journal-delete-all__yes,
.learndash-wrapper .safe-journal-delete-all__yes {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0 !important;
	box-sizing: border-box !important;
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif) !important;
	font-weight: var(--theme-button-font-weight, 500) !important;
	font-size: var(--theme-button-font-size, 15px) !important;
	line-height: 1.2 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	text-decoration: none !important;
	min-height: var(--theme-button-min-height, 40px) !important;
	height: auto !important;
	padding: var(--theme-button-padding, 5px 20px) !important;
	margin: 0 !important;
	border: none !important;
	border-width: 0 !important;
	border-style: none !important;
	outline: none !important;
	box-shadow: var(--theme-button-shadow, none) !important;
	border-radius: 50px !important;
	appearance: none !important;
	cursor: pointer !important;
	background: var(--theme-button-background-initial-color, var(--theme-palette-color-1, #0C3347)) !important;
	background-color: var(--theme-button-background-initial-color, var(--theme-palette-color-1, #0C3347)) !important;
	background-image: none !important;
	color: var(--theme-button-text-initial-color, #ffffff) !important;
	transition: background-color 0.12s ease, color 0.12s ease, opacity 0.12s ease !important;
	transform: none !important;
}

.learndash-wrapper .ld-button:hover,
.learndash-wrapper .ld-button:focus,
.learndash-wrapper .ld-button:focus-visible,
.learndash-wrapper a.ld-button:hover,
.learndash-wrapper #btn-join:hover,
.learndash-wrapper .btn-join:hover,
.learndash-wrapper .learndash_mark_complete_button:hover,
.learndash-wrapper .sfwd-mark-complete input[type="submit"]:hover,
.learndash-wrapper .ld-expand-button:hover,
.learndash-wrapper .wpProQuiz_button:hover,
.learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete input[type="submit"]:hover,
.learndash-wrapper .ld-focus .ld-focus-header .ld-content-actions .ld-button:hover,
.ld-focus-content .safe-reflection__submit:hover,
.learndash-wrapper .safe-reflection__submit:hover,
.ld-focus-content .safe-journal-delete-all__trigger:hover,
.learndash-wrapper .safe-journal-delete-all__trigger:hover,
.ld-focus-content .safe-journal-delete-all__yes:hover,
.learndash-wrapper .safe-journal-delete-all__yes:hover {
	background: var(--theme-button-background-hover-color, var(--theme-palette-color-1, #0C3347)) !important;
	background-color: var(--theme-button-background-hover-color, var(--theme-palette-color-1, #0C3347)) !important;
	color: var(--theme-button-text-hover-color, #ffffff) !important;
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	text-decoration: none !important;
	opacity: 1 !important;
}

.learndash-wrapper .ld-button:focus,
.learndash-wrapper .ld-button:focus-visible,
.learndash-wrapper .learndash_mark_complete_button:focus,
.learndash-wrapper .ld-expand-button:focus,
.learndash-wrapper .wpProQuiz_button:focus {
	outline: none !important;
	box-shadow: none !important;
}

/* Hide LearnDash icons inside buttons (arrows etc.) */
.learndash-wrapper .ld-button .ld-icon,
.learndash-wrapper a.ld-button .ld-icon,
.learndash-wrapper .ld-expand-button .ld-icon,
.learndash-wrapper .ld-button .ld-icon:before,
.learndash-wrapper .ld-expand-button .ld-icon:before {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	content: none !important;
}

/* Text span stays clean */
.learndash-wrapper .ld-button .ld-text,
.learndash-wrapper .ld-expand-button .ld-text {
	margin: 0 !important;
	padding: 0 !important;
	font: inherit !important;
	color: inherit !important;
}

/* Content action rows: keep spacing between buttons, not inside */
.learndash-wrapper .ld-content-actions {
	gap: 0.75rem;
}
.learndash-wrapper .ld-content-action {
	margin: 0 !important;
}
.learndash-wrapper .ld-content-actions .ld-button,
.learndash-wrapper .ld-content-actions .learndash_mark_complete_button {
	margin: 0 !important;
}

/* Neutralize LD primary-background utility on expand icons only (not the button). */
.learndash-wrapper .ld-expand-button .ld-icon.ld-primary-background,
.learndash-wrapper .ld-icon.ld-primary-background {
	background-color: transparent !important;
}

/*
 * Expand / Collapse — same filled pill everywhere (Module 1 look).
 * LD inline CSS sets .ld-button-alternate { background-color: transparent !important }
 * after our sheet; beat it with higher specificity + both longhands.
 */
.learndash-wrapper .ld-expand-button,
.learndash-wrapper .ld-expand-button.ld-primary-background,
.learndash-wrapper .ld-expand-button.ld-button-alternate,
.learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-details .ld-expand-button,
.learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-details .ld-expand-button.ld-button-alternate,
body.single-sfwd-courses .learndash-wrapper .ld-expand-button,
body.single-sfwd-courses .learndash-wrapper .ld-expand-button.ld-button-alternate {
	background: var(--theme-button-background-initial-color, var(--theme-palette-color-1, #0C3347)) !important;
	background-color: var(--theme-button-background-initial-color, var(--theme-palette-color-1, #0C3347)) !important;
	background-image: none !important;
	color: var(--theme-button-text-initial-color, #ffffff) !important;
	padding: var(--theme-button-padding, 5px 20px) !important;
}

.learndash-wrapper .ld-expand-button:hover,
.learndash-wrapper .ld-expand-button.ld-button-alternate:hover,
.learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-details .ld-expand-button:hover,
.learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-details .ld-expand-button.ld-button-alternate:hover,
body.single-sfwd-courses .learndash-wrapper .ld-expand-button:hover,
body.single-sfwd-courses .learndash-wrapper .ld-expand-button.ld-button-alternate:hover {
	background: var(--theme-button-background-hover-color, var(--theme-palette-color-1, #0C3347)) !important;
	background-color: var(--theme-button-background-hover-color, var(--theme-palette-color-1, #0C3347)) !important;
	color: var(--theme-button-text-hover-color, #ffffff) !important;
}

/* Cancel button in journal delete stays text-like, not primary */
.ld-focus-content .safe-journal-delete-all__cancel,
.learndash-wrapper .safe-journal-delete-all__cancel {
	appearance: none;
	border: none !important;
	background: transparent !important;
	border-radius: 50px;
	padding: var(--theme-button-padding, 5px 20px);
	min-height: var(--theme-button-min-height, 40px);
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif);
	font-weight: var(--theme-button-font-weight, 500);
	font-size: var(--theme-button-font-size, 15px);
	color: var(--safe-muted-2, #7c7469);
	cursor: pointer;
	box-shadow: none !important;
	outline: none !important;
}

/* ============================================================
   9. COURSE / LESSON / TOPIC — light reading surfaces
   Site chrome (header/footer) stays dark; LMS content stays calm.
   Translated from Claude Design: Course overview.
   ============================================================ */
body.single-sfwd-courses,
body.single-sfwd-lessons,
body.single-sfwd-topic {
	--safe-course-surface: #f5f3ef;
	--safe-course-card: #ffffff;
	--safe-course-card-border: #eae5dd;
}

body.single-sfwd-courses .site-main,
body.single-sfwd-lessons:not(.ld-in-focus-mode) .site-main,
body.single-sfwd-topic:not(.ld-in-focus-mode) .site-main,
body.single-sfwd-courses #main,
body.single-sfwd-lessons:not(.ld-in-focus-mode) #main {
	background: var(--safe-course-surface);
}

body.single-sfwd-courses .entry-content,
body.single-sfwd-courses .ct-container,
body.single-sfwd-courses .learndash-wrapper,
body.single-sfwd-lessons:not(.ld-in-focus-mode) .learndash-wrapper {
	color: var(--safe-text);
}

body.single-sfwd-courses .learndash-wrapper h1,
body.single-sfwd-courses .learndash-wrapper h2,
body.single-sfwd-courses .ld-section-heading h2 {
	color: var(--safe-heading);
	font-family: "Zalando Sans SemiExpanded", sans-serif !important;
	font-weight: 400;
	letter-spacing: -0.015em;
}

body.single-sfwd-courses .ld-section-heading h2 {
	position: relative;
	padding-bottom: 0.55em;
	margin-bottom: 0.35em;
}
body.single-sfwd-courses .ld-section-heading h2::after {
	content: "";
	display: block;
	width: 56px;
	height: 3px;
	background: var(--safe-courage);
	margin-top: 0.75rem;
}

/* Curriculum cards */
body.single-sfwd-courses .learndash-wrapper .ld-item-list .ld-item-list-item {
	background: var(--safe-course-card);
	border: 1px solid var(--safe-course-card-border);
	border-radius: 18px;
	margin: 0 0 1.1rem;
	overflow: hidden;
	box-shadow: none;
}
body.single-sfwd-courses .learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-list-item-preview {
	padding: 1.35rem 1.6rem;
	background: transparent;
}
body.single-sfwd-courses .learndash-wrapper .ld-item-list .ld-item-name,
body.single-sfwd-courses .learndash-wrapper .ld-item-list .ld-item-title {
	color: var(--safe-heading);
	font-weight: 600;
}
body.single-sfwd-courses .learndash-wrapper .ld-item-components,
body.single-sfwd-courses .learndash-wrapper .ld-item-component {
	color: var(--safe-muted-2);
	font-weight: 500;
}

/* Topic rows inside expanded lessons */
body.single-sfwd-courses .learndash-wrapper .ld-table-list {
	background: var(--safe-sand);
	border-top: 1px solid var(--safe-course-card-border);
}
body.single-sfwd-courses .learndash-wrapper .ld-table-list .ld-table-list-header {
	background: #f2f7f7 !important;
	color: var(--safe-pacific-ui) !important;
	border-bottom: 1px solid #e3edee;
}
body.single-sfwd-courses .learndash-wrapper .ld-table-list .ld-table-list-item {
	border-bottom: 1px solid #efe8de;
}
body.single-sfwd-courses .learndash-wrapper .ld-table-list .ld-table-list-item a {
	color: var(--safe-text);
}

/* Progress track vs fill — the bar itself is the track, not the accent */
body.single-sfwd-courses .learndash-wrapper .ld-progress .ld-progress-bar,
body.single-sfwd-courses .learndash-wrapper .ld-progress-bar {
	background-color: #e4eef0 !important;
}
body.single-sfwd-courses .learndash-wrapper .ld-progress .ld-progress-bar-percentage,
body.single-sfwd-courses .learndash-wrapper .ld-progress-bar-percentage {
	background-color: var(--safe-pacific-ui) !important;
}
/* Completed topic/lesson dots: pacific fill, white check */
body.single-sfwd-courses .learndash-wrapper .ld-status-icon.ld-status-complete,
body.single-sfwd-lessons .learndash-wrapper .ld-status-icon.ld-status-complete,
body.single-sfwd-topic .learndash-wrapper .ld-status-icon.ld-status-complete,
.learndash-wrapper .ld-item-list .ld-status-icon.ld-status-complete,
.learndash-wrapper .ld-table-list .ld-status-icon.ld-status-complete,
.learndash-wrapper .ld-course-navigation .ld-status-icon.ld-status-complete,
.learndash-wrapper .ld-topic-list .ld-status-icon.ld-status-complete {
	background: var(--safe-pacific-ui) !important;
	background-color: var(--safe-pacific-ui) !important;
	border-color: var(--safe-pacific-ui) !important;
	color: #ffffff !important;
}
body.single-sfwd-courses .learndash-wrapper .ld-status-icon.ld-status-complete .ld-icon,
body.single-sfwd-courses .learndash-wrapper .ld-status-icon.ld-status-complete .ld-icon:before,
body.single-sfwd-courses .learndash-wrapper .ld-status-icon.ld-status-complete .ld-icon-checkmark,
body.single-sfwd-courses .learndash-wrapper .ld-status-icon.ld-status-complete .ld-icon-checkmark:before,
body.single-sfwd-lessons .learndash-wrapper .ld-status-icon.ld-status-complete .ld-icon:before,
body.single-sfwd-topic .learndash-wrapper .ld-status-icon.ld-status-complete .ld-icon:before,
.learndash-wrapper .ld-item-list .ld-status-icon.ld-status-complete .ld-icon:before,
.learndash-wrapper .ld-table-list .ld-status-icon.ld-status-complete .ld-icon:before,
.learndash-wrapper .ld-course-navigation .ld-status-icon.ld-status-complete .ld-icon:before,
.learndash-wrapper .ld-topic-list .ld-status-icon.ld-status-complete .ld-icon:before {
	color: #ffffff !important;
}
/* Status pills/badges that share .ld-status-complete */
body.single-sfwd-courses .learndash-wrapper .ld-status.ld-status-complete,
body.single-sfwd-lessons .learndash-wrapper .ld-status.ld-status-complete,
body.single-sfwd-topic .learndash-wrapper .ld-status.ld-status-complete,
.learndash-wrapper .ld-breadcrumbs .ld-status.ld-status-complete {
	background-color: var(--safe-pacific-ui) !important;
	color: #ffffff !important;
}
/* Course CTAs: see § LearnDash buttons (Blocksy-aligned) */


/* Course content intro callouts inherit calm palette */
body.single-sfwd-courses .wp-block-group.callout {
	box-shadow: none;
}

/* Video embeds on course/lesson/topic pages: dark frame only around media */
body.single-sfwd-courses .wp-block-embed.is-type-video,
body.single-sfwd-lessons .wp-block-embed.is-type-video,
body.single-sfwd-topic .wp-block-embed.is-type-video,
.ld-focus-content .wp-block-embed.is-type-video {
	background: var(--safe-ui-navy);
	border-radius: 16px;
	overflow: hidden;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.10);
}
body.single-sfwd-courses .wp-block-embed.is-type-video .wp-block-embed__wrapper,
body.single-sfwd-lessons .wp-block-embed.is-type-video .wp-block-embed__wrapper,
body.single-sfwd-topic .wp-block-embed.is-type-video .wp-block-embed__wrapper,
.ld-focus-content .wp-block-embed.is-type-video .wp-block-embed__wrapper {
	margin: 0;
}

@media (max-width: 767px) {
	body.single-sfwd-courses .learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-list-item-preview {
		padding: 1.1rem 1.2rem;
	}
}

/* ============================================================
   COURSE STATUS BAR (Current Status / Price / Get Started)
   Match Blocksy + SAFE calm surfaces; no LD yellow/blue defaults.
   ============================================================ */
.learndash-wrapper .ld-course-status {
	background: #ffffff !important;
	border: 1px solid var(--safe-border-cool, #d7dee4) !important;
	border-radius: 18px !important;
	padding: 0 !important;
	margin: 0 0 2rem !important;
	box-shadow: none !important;
	overflow: hidden;
}

.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled,
.learndash-wrapper .ld-course-status.ld-course-status-enrolled {
	background-color: #ffffff !important;
	border-radius: 18px !important;
}

/* Enrolled: progress + status pill, not the 3-column enrol box */
.learndash-wrapper .ld-course-status.ld-course-status-enrolled {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 1.25rem !important;
	padding: 1.15rem 1.4rem !important;
	overflow: hidden;
}

.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-progress,
.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-progress.ld-progress-inline {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	flex: 1 1 auto !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	gap: 0.55rem;
	background: transparent !important;
	border: none !important;
}

.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-progress-heading {
	display: flex !important;
	flex-direction: row !important;
	align-items: baseline !important;
	justify-content: space-between !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	gap: 0.75rem 1.25rem;
}

.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-progress-stats {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: baseline !important;
	justify-content: space-between !important;
	width: 100% !important;
	gap: 0.35rem 1rem;
}

.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-progress-percentage,
.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-progress-percentage.ld-secondary-color {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--safe-pacific-ui, #2f6f78) !important;
	margin: 0 !important;
	line-height: 1.3 !important;
}

.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-progress-steps {
	display: block !important;
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 0.875rem !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--safe-muted-2, #7c7469) !important;
	margin: 0 !important;
	line-height: 1.4 !important;
}

.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-progress-bar {
	width: 100% !important;
	height: 6px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 999px !important;
	background: #e4eef0 !important;
	background-color: #e4eef0 !important;
	overflow: hidden;
}

.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-progress-bar-percentage,
.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-progress-bar-percentage.ld-secondary-background {
	height: 100% !important;
	border-radius: 999px !important;
	background: var(--safe-pacific-ui, #2f6f78) !important;
	background-color: var(--safe-pacific-ui, #2f6f78) !important;
}

.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-status {
	flex: 0 0 auto !important;
	align-self: center !important;
	width: auto !important;
	margin: 0 !important;
	white-space: nowrap;
}

.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 0 !important;
}

.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled > .ld-course-status-segment,
.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled > * {
	flex: 0 0 33.333% !important;
	width: 33.333% !important;
	max-width: 33.333% !important;
	box-sizing: border-box !important;
	padding: 25px !important;
	margin: 0 !important;
	border: none !important;
	border-right: 1px solid var(--safe-border, #e4e0d8) !important;
	text-align: left !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	gap: 0.65rem;
	background: transparent !important;
}

.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled > .ld-course-status-segment:last-child,
.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled > *:last-child {
	border-right: none !important;
}

.learndash-wrapper .ld-course-status .ld-course-status-label {
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 0.6875rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	color: var(--safe-pacific-ui, #2f6f78) !important;
	margin: 0 !important;
	line-height: 1.3 !important;
	text-align: left !important;
}

.learndash-wrapper .ld-course-status .ld-course-status-content {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
	text-align: left !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
}

.learndash-wrapper .ld-course-status .ld-course-status-price {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 1.25rem !important;
	font-weight: 600 !important;
	color: var(--safe-heading, #26384a) !important;
	line-height: 1.3 !important;
	text-align: left !important;
}

/* Status pills */
.learndash-wrapper .ld-course-status .ld-status {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 50px !important;
	padding: 0.45rem 1rem !important;
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	border: none !important;
	box-shadow: none !important;
	line-height: 1.2 !important;
	margin: 0 !important;
}

/* Not enrolled — soft sand instead of LD yellow */
.learndash-wrapper .ld-course-status .ld-status.ld-status-waiting,
.learndash-wrapper .ld-course-status .ld-status.ld-tertiary-background {
	background: var(--safe-dune-soft, #efe9e0) !important;
	background-color: var(--safe-dune-soft, #efe9e0) !important;
	color: var(--safe-heading, #26384a) !important;
}

/* Enrolled / in progress / complete pills */
.learndash-wrapper .ld-course-status .ld-status.ld-status-progress {
	background: #f2f7f7 !important;
	color: var(--safe-pacific-ui, #2f6f78) !important;
}
.learndash-wrapper .ld-course-status .ld-status.ld-status-complete {
	background: var(--safe-pacific-ui, #2f6f78) !important;
	color: #ffffff !important;
}

.learndash-wrapper .ld-course-status .ld-course-status-action {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
	display: flex !important;
	justify-content: flex-start !important;
	align-items: flex-start !important;
}

.learndash-wrapper .ld-course-status .ld-course-status-action .ld-button,
.learndash-wrapper .ld-course-status .ld-course-status-action #btn-join,
.learndash-wrapper .ld-course-status .ld-course-status-action .btn-join {
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
}

.learndash-wrapper .ld-course-status .ld-tooltip__text {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif);
	font-size: 0.85rem;
	border-radius: 12px;
}

@media (max-width: 767px) {
	.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled {
		flex-direction: column !important;
	}
	.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled > .ld-course-status-segment,
	.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled > * {
		flex: 1 1 auto !important;
		width: 100% !important;
		max-width: 100% !important;
		border-right: none !important;
		border-bottom: 1px solid var(--safe-border, #e4e0d8) !important;
		padding: 25px !important;
	}
	.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled > .ld-course-status-segment:last-child,
	.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled > *:last-child {
		border-bottom: none !important;
	}
	.learndash-wrapper .ld-course-status.ld-course-status-enrolled {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 0.85rem !important;
		padding: 1.1rem 1.15rem !important;
	}
	.learndash-wrapper .ld-course-status.ld-course-status-enrolled .ld-status {
		align-self: flex-start !important;
	}
}

/* ============================================================
   S.A.F.E. ACADEMY — Private reflection (completion-only)
   ============================================================ */
.safe-reflection,
.ld-focus-content .safe-reflection,
.learndash-wrapper .safe-reflection {
	background: #fff;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-left: 3px solid var(--safe-pacific-ui, #2f6f78);
	border-radius: 18px;
	padding: 1.75rem 2rem 1.85rem;
	margin: 2.5rem 0;
	box-sizing: border-box;
}

.safe-reflection__eyebrow,
.ld-focus-content .safe-reflection__eyebrow,
.learndash-wrapper .safe-reflection__eyebrow {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif);
	font-size: 1rem;
	letter-spacing: normal;
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1.4;
	color: var(--safe-slate, #3D5A6B);
	margin: 0 0 0.85rem;
}

.safe-reflection__prompt,
.ld-focus-content .safe-reflection__prompt,
.learndash-wrapper .safe-reflection__prompt {
	display: block;
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif);
	font-size: 1.15rem;
	line-height: 1.55;
	font-weight: 600;
	color: var(--safe-heading, #26384a);
	margin-bottom: 1rem;
}

.safe-reflection__input,
.ld-focus-content .safe-reflection__input,
.learndash-wrapper .safe-reflection__input {
	display: block;
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--safe-border, #e4e0d8);
	border-radius: 12px;
	padding: 0.9rem 1rem;
	font: inherit;
	line-height: 1.6;
	color: var(--safe-text, #565049);
	background: #fff;
	resize: vertical;
	min-height: 6.5rem;
	margin-bottom: 0.75rem;
}

.safe-reflection__input:focus,
.ld-focus-content .safe-reflection__input:focus,
.learndash-wrapper .safe-reflection__input:focus {
	outline: 2px solid var(--safe-pacific-ui, #2f6f78);
	outline-offset: 2px;
	border-color: var(--safe-pacific-ui, #2f6f78);
}

.safe-reflection__privacy-note,
.ld-focus-content .safe-reflection__privacy-note,
.learndash-wrapper .safe-reflection__privacy-note {
	font-size: 0.875rem;
	line-height: 1.55;
	color: var(--safe-muted-2, #7c7469);
	margin: 0 0 1.15rem;
}

.safe-reflection__submit:disabled {
	opacity: 0.65;
	cursor: wait;
}

.safe-reflection__error,
.ld-focus-content .safe-reflection__error,
.learndash-wrapper .safe-reflection__error {
	margin: 0.85rem 0 0;
	color: #9b3b3b;
	font-size: 0.9rem;
}

.safe-reflection__reveal,
.ld-focus-content .safe-reflection__reveal,
.learndash-wrapper .safe-reflection__reveal {
	margin-top: 1.15rem;
	padding: 1rem 1.15rem;
	border-radius: 14px;
	background: #f2f7f7;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	color: var(--safe-heading, #26384a);
	font-size: 1rem;
	line-height: 1.6;
}

.safe-reflection--completed .safe-reflection__reveal {
	margin-top: 0.35rem;
}

.safe-reflection--resurface,
.ld-focus-content .safe-reflection--resurface,
.learndash-wrapper .safe-reflection--resurface {
	padding: 1.25rem 1.5rem;
}

.safe-reflection__label,
.ld-focus-content .safe-reflection__label,
.learndash-wrapper .safe-reflection__label {
	font-size: 0.6875rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--safe-pacific-ui, #2f6f78);
	margin: 0 0 0.5rem;
}

.safe-reflection__past-entry,
.ld-focus-content .safe-reflection__past-entry,
.learndash-wrapper .safe-reflection__past-entry {
	margin: 0;
	color: var(--safe-text, #565049);
	line-height: 1.55;
}

.safe-reflection__login,
.safe-reflection__empty {
	font-size: 0.95rem;
	color: var(--safe-muted-2, #7c7469);
}

.safe-journal-delete-all {
	margin: 1.5rem 0;
}

.safe-journal-delete-all__confirm {
	margin-top: 0.85rem;
	font-size: 0.9rem;
	color: var(--safe-text, #565049);
	line-height: 1.55;
}

.safe-journal-delete-all__cancel,
.ld-focus-content .safe-journal-delete-all__cancel,
.learndash-wrapper .safe-journal-delete-all__cancel {
	appearance: none;
	background: transparent !important;
	border: none !important;
	color: var(--safe-pacific-ui, #2f6f78) !important;
	text-decoration: underline;
	cursor: pointer;
	font: inherit;
	padding: 0.35em 0.5em !important;
	margin-left: 0.5rem;
}

.safe-journal-delete-all__yes {
	margin-left: 0.75rem;
}

@media (max-width: 640px) {
	.safe-reflection,
	.ld-focus-content .safe-reflection,
	.learndash-wrapper .safe-reflection {
		padding: 1.35rem 1.25rem 1.45rem;
		margin: 2rem 0;
	}
}

/* ============================================================
   LEARN DASH INFOBAR ([ld_infobar] / lesson & topic status)
   Same shell as .callout / .callout-ayleen (sand + cool border).
   ============================================================ */
.learndash-wrapper[class*="learndash-shortcode-wrap-ld_infobar"],
.learndash-wrapper.learndash-shortcode-wrap[class*="ld_infobar"] {
	background: var(--safe-sand, #fbfaf8) !important;
	background-color: var(--safe-sand, #fbfaf8) !important;
	background-image: none !important;
	border: 1px solid var(--safe-border-cool, #d7dee4) !important;
	border-radius: 18px !important;
	padding: 1.5rem 1.85rem 1.85rem !important;
	margin: 2.5rem 0 !important;
	overflow: hidden;
	color: var(--safe-text, #565049);
	box-shadow: none !important;
	box-sizing: border-box;
}

.learndash-wrapper .ld-topic-status,
.learndash-wrapper .ld-lesson-status,
.learndash-wrapper[class*="learndash-shortcode-wrap-ld_infobar"] .ld-lesson-status,
.learndash-wrapper[class*="learndash-shortcode-wrap-ld_infobar"] .ld-topic-status,
.learndash-wrapper[class*="ld_infobar"] .ld-lesson-status,
.learndash-wrapper[class*="ld_infobar"] .ld-topic-status {
	display: flex;
	flex-direction: column;
	gap: 1.5rem; /* space between breadcrumbs and lesson progress */
	margin: 0;
	padding: 0;
	background: transparent !important;
	background-color: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	overflow: visible;
}

.learndash-wrapper .ld-topic-status .ld-progress,
.learndash-wrapper .ld-lesson-status .ld-progress {
	padding: 0 !important;
}

/* Top row: breadcrumbs + status pill */
.learndash-wrapper[class*="ld_infobar"] .ld-breadcrumbs {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.85rem 1.25rem;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
}

.learndash-wrapper[class*="ld_infobar"] .ld-breadcrumbs-segments,
.learndash-wrapper .ld-breadcrumbs .ld-breadcrumbs-segments {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.15rem;
	margin: 0;
	/* Longhands + !important: LD sets padding-left:0 / padding-right:1em and wins over shorthand */
	padding-top: 4px !important;
	padding-right: 20px !important;
	padding-bottom: 4px !important;
	padding-left: 20px !important;
	list-style: none;
	flex: 1 1 auto;
	min-width: 0;
	background: #fff;
	border-radius: 50px;
	box-sizing: border-box;
	overflow: visible;
}

.learndash-wrapper[class*="ld_infobar"] .ld-breadcrumbs-segments li {
	display: inline-flex;
	align-items: center;
	margin: 0;
	padding: 0;
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.45;
	color: var(--safe-heading, #26384a);
}

.learndash-wrapper[class*="ld_infobar"] .ld-breadcrumbs-segments li:after {
	content: ">" !important;
	margin: 0 0.55rem;
	color: var(--safe-muted-2, #7c7469);
	font-weight: 500;
	opacity: 1;
}
.learndash-wrapper[class*="ld_infobar"] .ld-breadcrumbs-segments li:last-child:after {
	content: "" !important;
	margin: 0;
}

.learndash-wrapper[class*="ld_infobar"] .ld-breadcrumbs-segments a {
	color: var(--safe-heading, #26384a) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	text-decoration: none !important;
	border: none !important;
	box-shadow: none !important;
}

.learndash-wrapper[class*="ld_infobar"] .ld-breadcrumbs-segments a:hover {
	color: var(--safe-pacific-ui, #2f6f78) !important;
}

.learndash-wrapper[class*="ld_infobar"] .ld-breadcrumbs-segments a[aria-current="page"] {
	font-weight: 400;
	pointer-events: none;
}

/* Status pill (In Progress / Complete) */
.learndash-wrapper[class*="ld_infobar"] .ld-breadcrumbs .ld-status,
.learndash-wrapper[class*="ld_infobar"] .ld-lesson-status .ld-status,
.learndash-wrapper[class*="ld_infobar"] .ld-topic-status .ld-status {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 auto;
	margin: 0 !important;
	padding: 0.45rem 1rem !important;
	border: none !important;
	border-radius: 50px !important;
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 0.6875rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	line-height: 1.2 !important;
	box-shadow: none !important;
}

.learndash-wrapper[class*="ld_infobar"] .ld-status.ld-status-progress,
.learndash-wrapper[class*="ld_infobar"] .ld-status.ld-primary-background {
	background: var(--safe-ui-navy, #1f2c3b) !important;
	background-color: var(--safe-ui-navy, #1f2c3b) !important;
	color: #ffffff !important;
}

.learndash-wrapper[class*="ld_infobar"] .ld-status.ld-status-complete {
	background: var(--safe-pacific-ui, #2f6f78) !important;
	background-color: var(--safe-pacific-ui, #2f6f78) !important;
	color: #ffffff !important;
}

.learndash-wrapper[class*="ld_infobar"] .ld-status.ld-status-waiting,
.learndash-wrapper[class*="ld_infobar"] .ld-status.ld-tertiary-background {
	background: var(--safe-dune-soft, #efe9e0) !important;
	color: var(--safe-heading, #26384a) !important;
}

/* Progress block */
.learndash-wrapper[class*="ld_infobar"] .ld-progress {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
}

.learndash-wrapper[class*="ld_infobar"] .ld-progress-heading {
	display: flex !important;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
	margin: 0 0 0.65rem !important;
	padding: 0 !important;
}

.learndash-wrapper[class*="ld_infobar"] .ld-progress-label,
.learndash-wrapper[class*="ld_infobar"] .ld-progress-percentage,
.learndash-wrapper[class*="ld_infobar"] .ld-progress-stats {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	line-height: 1.3 !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--safe-courage, #A84E62) !important;
}

.learndash-wrapper[class*="ld_infobar"] .ld-progress-percentage.ld-secondary-color,
.learndash-wrapper[class*="ld_infobar"] .ld-secondary-color {
	color: var(--safe-courage, #A84E62) !important;
}

.learndash-wrapper[class*="ld_infobar"] .ld-progress-stats {
	display: flex;
	align-items: baseline;
	gap: 0.75rem;
}

.learndash-wrapper[class*="ld_infobar"] .ld-progress-steps {
	display: none; /* keep bar clean like the design; % is enough */
}

.learndash-wrapper[class*="ld_infobar"] .ld-progress-bar {
	height: 5px !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	background-color: #ffffff !important;
	overflow: hidden;
	margin: 0 !important;
	border: 1px solid var(--safe-border-cool, #d7dee4);
}

.learndash-wrapper[class*="ld_infobar"] .ld-progress-bar-percentage,
.learndash-wrapper[class*="ld_infobar"] .ld-progress-bar-percentage.ld-secondary-background,
.learndash-wrapper[class*="ld_infobar"] .ld-secondary-background {
	height: 100% !important;
	border-radius: 999px !important;
	background: var(--safe-courage, #A84E62) !important;
	background-color: var(--safe-courage, #A84E62) !important;
}

@media (max-width: 640px) {
	.learndash-wrapper[class*="learndash-shortcode-wrap-ld_infobar"],
	.learndash-wrapper.learndash-shortcode-wrap[class*="ld_infobar"] {
		padding: 1.25rem !important;
		margin: 2rem 0 !important;
	}

	.learndash-wrapper[class*="ld_infobar"] .ld-breadcrumbs {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* ============================================================
   SAFE POLL — anonymous two-step (raised hands)
   ============================================================ */
.safe-poll,
.ld-focus-content .safe-poll,
.learndash-wrapper .safe-poll {
	background: #fff;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-left: 3px solid var(--safe-pacific-ui, #2f6f78);
	border-radius: 18px;
	padding: 1.75rem 2rem 1.85rem;
	margin: 2.5rem 0;
	box-sizing: border-box;
}

.safe-poll__eyebrow {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif);
	font-size: 1rem;
	letter-spacing: normal;
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1.4;
	color: var(--safe-slate, #3D5A6B);
	margin: 0 0 0.85rem;
}

.safe-poll__question,
.safe-poll__result-question {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif);
	font-size: 1.15rem;
	line-height: 1.55;
	font-weight: 600;
	color: var(--safe-heading, #26384a);
	margin: 0 0 1rem;
}

.safe-poll__options {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin: 0 0 1.15rem;
}

.safe-poll__option {
	appearance: none;
	-webkit-appearance: none;
	border: 1px solid var(--safe-border-cool, #d7dee4) !important;
	background: #ffffff !important;
	color: var(--safe-heading, #26384a) !important;
	border-radius: 50px !important;
	padding: 0.7em 1.35em !important;
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	cursor: pointer;
	box-shadow: none !important;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.safe-poll__option:hover,
.safe-poll__option.is-selected {
	background: var(--safe-pacific-ui, #2f6f78) !important;
	border-color: var(--safe-pacific-ui, #2f6f78) !important;
	color: #ffffff !important;
}

.safe-poll__option:disabled {
	opacity: 0.7;
	cursor: wait;
}

.safe-poll__privacy-note,
.safe-poll__login {
	font-size: 0.875rem;
	line-height: 1.55;
	color: var(--safe-muted-2, #7c7469);
	margin: 0;
}

.safe-poll__error {
	margin: 0.85rem 0 0;
	color: #9b3b3b;
	font-size: 0.9rem;
}

.safe-poll--multi .safe-poll__submit {
	appearance: none;
	-webkit-appearance: none;
	margin: 0.25rem 0 0.85rem;
	border: 1px solid var(--safe-pacific-ui, #2f6f78) !important;
	background: var(--safe-pacific-ui, #2f6f78) !important;
	color: #fff !important;
	border-radius: 50px !important;
	padding: 0.7em 1.5em !important;
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	cursor: pointer;
}

.safe-poll--multi .safe-poll__submit:disabled {
	opacity: 0.7;
	cursor: wait;
}

.safe-poll__result-note {
	font-size: 0.875rem;
	color: var(--safe-muted-2, #7c7469);
	margin: 0 0 0.75rem;
}

.safe-poll__results {
	margin-top: 0.35rem;
}

.safe-poll__results-heading {
	font-size: 0.75rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 600;
	color: var(--safe-pacific-ui, #2f6f78);
	margin: 0 0 1.25rem;
}

.safe-poll__result-block + .safe-poll__result-block {
	margin-top: 1.5rem;
	padding-top: 1.35rem;
	border-top: 1px solid var(--safe-border, #e4e0d8);
}

.safe-poll__bars {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.safe-poll__bar-row {
	display: grid;
	grid-template-columns: minmax(5.5rem, 8.5rem) 1fr auto;
	gap: 0.75rem;
	align-items: center;
}

.safe-poll__bar-label {
	font-size: 0.9rem;
	font-weight: 500;
	color: var(--safe-heading, #26384a);
}

.safe-poll__bar-row.is-yours .safe-poll__bar-label::after {
	content: " · you";
	color: var(--safe-pacific-ui, #2f6f78);
	font-weight: 600;
	font-size: 0.75rem;
	letter-spacing: 0.04em;
	text-transform: lowercase;
}

.safe-poll__bar-track {
	display: block;
	height: 8px;
	border-radius: 999px;
	background: #ffffff;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	overflow: hidden;
}

.safe-poll__bar-fill {
	display: block;
	height: 100%;
	border-radius: 999px;
	background: var(--safe-courage, #A84E62);
	min-width: 0;
	transition: width 0.35s ease;
}

.safe-poll__bar-meta {
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--safe-courage, #A84E62);
	min-width: 2.75rem;
	text-align: right;
}

.safe-poll__reveal {
	margin-top: 1.25rem;
	padding: 1rem 1.15rem;
	border-radius: 14px;
	background: #f2f7f7;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	color: var(--safe-heading, #26384a);
	font-size: 1rem;
	line-height: 1.6;
}

@media (max-width: 640px) {
	.safe-poll,
	.ld-focus-content .safe-poll,
	.learndash-wrapper .safe-poll {
		padding: 1.35rem 1.25rem 1.45rem;
	}
	.safe-poll__bar-row {
		grid-template-columns: 1fr auto;
		grid-template-areas:
			"label meta"
			"track track";
	}
	.safe-poll__bar-label { grid-area: label; }
	.safe-poll__bar-meta { grid-area: meta; }
	.safe-poll__bar-track { grid-area: track; }
}

/* ============================================================
   SAFE CHECK — formative knowledge check (click → reveal)
   ============================================================ */
.safe-check,
.ld-focus-content .safe-check,
.learndash-wrapper .safe-check {
	background: #fff;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-left: 3px solid var(--safe-pacific-ui, #2f6f78);
	border-radius: 18px;
	padding: 1.75rem 2rem 1.85rem;
	margin: 2.5rem 0;
	box-sizing: border-box;
}

.safe-check__eyebrow {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif);
	font-size: 1rem;
	letter-spacing: normal;
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1.4;
	color: var(--safe-slate, #3D5A6B);
	margin: 0 0 0.85rem;
}

.safe-check__prompt {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif);
	font-size: 1.15rem;
	line-height: 1.55;
	font-weight: 600;
	color: var(--safe-heading, #26384a);
	margin: 0 0 1.15rem;
}

.safe-check__options {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	margin: 0 0 0.25rem;
}

.safe-check__option {
	appearance: none;
	-webkit-appearance: none;
	display: flex;
	align-items: flex-start;
	gap: 0.85rem;
	width: 100%;
	text-align: left;
	border: 1px solid var(--safe-border-cool, #d7dee4) !important;
	background: #ffffff !important;
	color: var(--safe-heading, #26384a) !important;
	border-radius: 14px !important;
	padding: 0.95rem 1.1rem !important;
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 0.98rem !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
	cursor: pointer;
	box-shadow: none !important;
	transition: border-color 0.15s ease, background 0.15s ease;
}

.safe-check__option:hover:not(:disabled) {
	border-color: var(--safe-pacific-ui, #2f6f78) !important;
}

.safe-check__letter {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.75rem;
	height: 1.75rem;
	border-radius: 999px;
	background: #f2f7f7;
	color: var(--safe-pacific-ui, #2f6f78);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
}

.safe-check__label {
	flex: 1 1 auto;
	padding-top: 0.15rem;
}

.safe-check__option.is-selected:not(.is-correct):not(.is-wrong) {
	border-color: var(--safe-pacific-ui, #2f6f78) !important;
}

.safe-check__option.is-correct {
	border-color: var(--safe-pacific-ui, #2f6f78) !important;
	background: #f2f7f7 !important;
}

.safe-check__option.is-correct .safe-check__letter {
	background: var(--safe-pacific-ui, #2f6f78);
	color: #fff;
}

.safe-check__option.is-wrong {
	border-color: var(--safe-courage-soft, #dd8f99) !important;
	background: #fbf6f6 !important;
}

.safe-check__option.is-wrong .safe-check__letter {
	background: var(--safe-courage, #A84E62);
	color: #fff;
}

.safe-check__option:disabled {
	cursor: default;
	opacity: 1;
}

.safe-check__reveal {
	margin-top: 1.25rem;
	padding: 1rem 1.15rem;
	border-radius: 14px;
	background: #f2f7f7;
	border: 1px solid var(--safe-border-cool, #d7dee4);
}

.safe-check__verdict {
	margin: 0 0 0.55rem;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--safe-pacific-ui, #2f6f78);
}

.safe-check__verdict.is-wrong {
	color: var(--safe-courage, #A84E62);
}

.safe-check__explain {
	margin: 0;
	color: var(--safe-heading, #26384a);
	font-size: 1rem;
	line-height: 1.6;
}

.safe-check__retry,
.safe-poll__retry,
.safe-reflection__retry {
	display: inline-block;
	margin-top: 0.85rem;
	padding: 0.45rem 0.95rem;
	border: 1px solid var(--safe-pacific-ui, #2f6f78);
	border-radius: 999px;
	background: transparent;
	color: var(--safe-pacific-ui, #2f6f78);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	cursor: pointer;
	line-height: 1.3;
}

.safe-check__retry:hover,
.safe-poll__retry:hover,
.safe-reflection__retry:hover {
	background: var(--safe-pacific-ui, #2f6f78);
	color: #fff;
}

.safe-poll__retry:disabled,
.safe-reflection__retry:disabled {
	opacity: 0.6;
	cursor: wait;
}

@media (max-width: 640px) {
	.safe-check,
	.ld-focus-content .safe-check,
	.learndash-wrapper .safe-check {
		padding: 1.35rem 1.25rem 1.45rem;
	}
}

/* ============================================================
   SAFE MYTHFACT — prompt → myth vs fact + takeaway
   ============================================================ */
.safe-mythfact,
.ld-focus-content .safe-mythfact,
.learndash-wrapper .safe-mythfact {
	background: #fff;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-left: 3px solid var(--safe-pacific-ui, #2f6f78);
	border-radius: 18px;
	padding: 1.75rem 2rem 1.85rem;
	margin: 2.5rem 0;
	box-sizing: border-box;
}

.safe-mythfact__eyebrow,
.safe-mythfact__reveal-eyebrow {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif);
	font-size: 1rem;
	letter-spacing: normal;
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1.4;
	color: var(--safe-slate, #3D5A6B);
	margin: 0 0 0.85rem;
}

.safe-mythfact__prompt {
	display: block;
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif);
	font-size: 1.15rem;
	line-height: 1.55;
	font-weight: 600;
	color: var(--safe-heading, #26384a);
	margin: 0 0 1rem;
}

.safe-mythfact__input {
	display: block;
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--safe-border, #e4e0d8);
	border-radius: 12px;
	padding: 0.9rem 1rem;
	font: inherit;
	line-height: 1.6;
	color: var(--safe-text, #565049);
	background: #fff;
	resize: vertical;
	min-height: 5rem;
	margin-bottom: 0.65rem;
}

.safe-mythfact__input:focus {
	outline: 2px solid var(--safe-pacific-ui, #2f6f78);
	outline-offset: 2px;
	border-color: var(--safe-pacific-ui, #2f6f78);
}

.safe-mythfact__privacy-note {
	font-size: 0.875rem;
	line-height: 1.55;
	color: var(--safe-muted-2, #7c7469);
	margin: 0 0 1.15rem;
}

.safe-mythfact__continue,
.ld-focus-content .safe-mythfact__continue,
.learndash-wrapper .safe-mythfact__continue {
	appearance: none;
	border: none !important;
	border-radius: 50px !important;
	background: var(--theme-button-background-initial-color, var(--safe-pacific-ui, #2f6f78)) !important;
	color: var(--theme-button-text-initial-color, #fff) !important;
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif) !important;
	font-weight: 500 !important;
	font-size: 15px !important;
	padding: 0.75em 1.5em !important;
	cursor: pointer;
	box-shadow: none !important;
}

.safe-mythfact__pairs {
	list-style: none;
	margin: 0 0 1.25rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.safe-mythfact__pair {
	padding: 1rem 1.15rem;
	border-radius: 14px;
	background: #ffffff;
	border: 1px solid var(--safe-border-cool, #d7dee4);
}

.safe-mythfact__myth,
.safe-mythfact__fact {
	margin: 0;
	font-size: 0.98rem;
	line-height: 1.55;
	color: var(--safe-text, #565049);
}

.safe-mythfact__myth {
	margin-bottom: 0.65rem;
}

.safe-mythfact__myth span,
.safe-mythfact__fact span {
	display: inline-block;
	font-size: 0.6875rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 700;
	margin-right: 0.45rem;
}

.safe-mythfact__myth span {
	color: var(--safe-courage, #A84E62);
}

.safe-mythfact__fact span {
	color: var(--safe-pacific-ui, #2f6f78);
}

.safe-mythfact__takeaway {
	margin: 0;
	padding: 1rem 1.15rem;
	border-radius: 14px;
	background: #f2f7f7;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	color: var(--safe-heading, #26384a);
	font-size: 1.05rem;
	font-weight: 600;
	line-height: 1.55;
}

.safe-check__choice-feedback {
	margin: 0 0 0.75rem;
	font-size: 0.98rem;
	line-height: 1.55;
	color: var(--safe-text, #565049);
}

@media (max-width: 640px) {
	.safe-mythfact,
	.ld-focus-content .safe-mythfact,
	.learndash-wrapper .safe-mythfact {
		padding: 1.35rem 1.25rem 1.45rem;
	}
}

/* ============================================================
   Extra list rhythm for exercise / keyterm / carry-these
   ============================================================ */
.callout-exercise > p:first-child,
.callout-modelanswer > p:first-child,
.callout-carrythese > p:first-child,
.callout-keyterm > p:first-child {
	background: transparent;
	border: none;
	margin: 0 0 0.5rem;
	padding: 0;
}

.callout-carrythese ul,
.callout-carrythese ol,
.callout-exercise ul,
.callout-exercise ol,
.callout-keyterm ul,
.callout-keyterm ol {
	margin: 0.25rem 0 0;
	padding-left: 1.1rem;
}
.callout-carrythese li,
.callout-exercise li,
.callout-keyterm li {
	margin-bottom: 0.65rem;
	line-height: 1.65;
	color: var(--safe-text);
}

/*
 * Crisis / safeguarding — heavier, contained, calm.
 * Stronger cool-slate border + deeper sand tint; no red/siren.
 */
.wp-block-group.callout.callout-crisis,
.callout-crisis {
	background: #f4f1ec !important;
	border: 2px solid var(--safe-slate, #3D5A6B) !important;
	border-radius: 14px !important;
	padding: 1.35rem 1.5rem 1.5rem !important;
	box-shadow: inset 4px 0 0 var(--safe-midnight, #0C3347);
	color: var(--safe-heading, #26384a);
}

.ld-focus-content .wp-block-group.callout.callout-crisis,
.learndash-wrapper .wp-block-group.callout.callout-crisis,
.single-sfwd-topic .wp-block-group.callout.callout-crisis,
.single-sfwd-lessons .wp-block-group.callout.callout-crisis {
	background: #f4f1ec !important;
	border: 2px solid var(--safe-slate, #3D5A6B) !important;
	border-radius: 14px !important;
	padding: 1.35rem 1.5rem 1.5rem !important;
}

.callout-crisis > p:first-child > strong:first-child,
.callout-crisis strong:first-child {
	color: var(--safe-midnight, #0C3347) !important;
	letter-spacing: 0.16em;
}

.callout-crisis p {
	color: var(--safe-heading, #26384a);
	line-height: 1.7;
}

/* ------------------------------------------------------------
   Course audio players
   ------------------------------------------------------------ */
.ld-focus-content .wp-block-audio,
.learndash-wrapper .wp-block-audio,
.callout .wp-block-audio {
	margin: 0.75rem 0 1rem;
}

.ld-focus-content .wp-block-audio audio,
.learndash-wrapper .wp-block-audio audio,
.callout .wp-block-audio audio {
	width: 100%;
	max-width: 100%;
	height: 42px;
	border-radius: 21px;
}

.callout-mindful .wp-block-audio {
	margin-top: 0.35rem;
}

/* ============================================================
   WooCommerce shop & product — Haven palette
   ============================================================ */
body.woocommerce-page,
body.single-product {
	--safe-course-surface: #f5f3ef;
}

body.woocommerce-page .site-main,
body.single-product .site-main {
	background: var(--safe-course-surface, #f5f3ef);
}

body.single-product .product .price,
body.woocommerce ul.products li.product .price {
	color: var(--safe-midnight, #0C3347);
	font-weight: 600;
	font-size: 1.35rem;
}

body.single-product .product_title {
	color: var(--safe-heading, #26384a);
	font-weight: 600;
	letter-spacing: -0.015em;
}

body.single-product .woocommerce-product-details__short-description {
	color: var(--safe-text, #565049);
	max-width: 40rem;
	line-height: 1.65;
}

body.woocommerce a.button,
body.woocommerce button.button,
body.woocommerce input.button,
body.woocommerce #respond input#submit,
body.woocommerce a.added_to_cart,
body.single-product .single_add_to_cart_button {
	border-radius: 50px !important;
	border: none !important;
	background: var(--theme-button-background-initial-color, var(--safe-midnight, #0C3347)) !important;
	color: #fff !important;
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif) !important;
	font-weight: 500 !important;
	padding: var(--theme-button-padding, 5px 20px) !important;
	min-height: var(--theme-button-min-height, 40px) !important;
	text-transform: none !important;
	box-shadow: none !important;
}

body.woocommerce a.button:hover,
body.woocommerce button.button:hover,
body.woocommerce input.button:hover,
body.single-product .single_add_to_cart_button:hover {
	background: var(--theme-button-background-hover-color, var(--safe-midnight, #0C3347)) !important;
	color: #fff !important;
	opacity: 0.92;
}

body.woocommerce ul.products {
	gap: 1.5rem;
}

body.woocommerce ul.products li.product {
	background: #fff;
	border: 1px solid #eae5dd;
	border-radius: 18px;
	padding: 1.5rem 1.4rem 1.6rem !important;
	box-shadow: none;
}

body.woocommerce ul.products li.product .woocommerce-loop-product__title {
	color: var(--safe-heading, #26384a);
	font-weight: 600;
	font-size: 1.05rem;
}

body.single-sfwd-courses .ld-course-status.ld-course-status-not-enrolled {
	padding: 0;
}

/* ============================================================
   MODULE ASSESSMENT — LearnDash quiz overlay
   ============================================================ */
.safe-assessment {
	margin: 2.5rem 0 3rem;
}

.safe-assessment__care {
	margin: 1.5rem 0 1.75rem;
}

/* Keep NOTE below the LD status / progress shell */
.safe-assessment__quiz > [class*="ld_infobar"] + .safe-assessment__care,
.safe-assessment__quiz .learndash-shortcode-wrap[class*="ld_infobar"] + .safe-assessment__care {
	margin-top: 1.5rem;
}

.safe-assessment.is-closing .safe-assessment__quiz,
.safe-assessment.is-result .safe-assessment__quiz {
	display: none !important;
}

.safe-assessment .wpProQuiz_resultsList,
.safe-assessment .wpProQuiz_points,
.safe-assessment .wpProQuiz_quiz_time,
.safe-assessment .wpProQuiz_resultTable,
.safe-assessment .wpProQuiz_catOverview {
	display: none !important;
}

.safe-assessment__eyebrow {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif);
	font-size: 1rem;
	letter-spacing: normal;
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1.4;
	color: var(--safe-slate, #3D5A6B);
	margin: 0 0 0.85rem;
}

.safe-assessment__title {
	font-size: 1.35rem;
	line-height: 1.35;
	color: var(--safe-heading, #26384a);
	margin: 0 0 1rem;
}

.safe-assessment__closing,
.safe-assessment__result {
	background: #fff;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-left: 3px solid var(--safe-pacific-ui, #2f6f78);
	border-radius: 18px;
	padding: 1.75rem 2rem 1.85rem;
	margin: 0 0 1.5rem;
	box-sizing: border-box;
}

.safe-assessment__notes {
	display: block;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--safe-border, #e4e0d8);
	border-radius: 12px;
	padding: 0.9rem 1rem;
	font: inherit;
	line-height: 1.6;
	color: var(--safe-text, #565049);
	background: #fff;
	resize: vertical;
	min-height: 7rem;
	margin: 0 0 1rem;
}

.safe-assessment__notes:focus {
	outline: 2px solid var(--safe-pacific-ui, #2f6f78);
	outline-offset: 2px;
}

.safe-assessment__rubric {
	margin: 0 0 1rem;
	padding-left: 1.2rem;
	color: var(--safe-text, #565049);
}

.safe-assessment__privacy {
	font-size: 0.875rem;
	color: var(--safe-muted-2, #7c7469);
}

.safe-assessment__btn,
.ld-focus-content .safe-assessment__btn,
.learndash-wrapper .safe-assessment__btn {
	appearance: none;
	border: none !important;
	border-radius: 50px !important;
	background: var(--theme-button-background-initial-color, var(--safe-pacific-ui, #2f6f78)) !important;
	color: var(--theme-button-text-initial-color, #fff) !important;
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif) !important;
	font-weight: 500 !important;
	font-size: 15px !important;
	padding: 0.75em 1.5em !important;
	cursor: pointer;
	box-shadow: none !important;
	margin-top: 0.5rem;
}

.safe-assessment__btn--secondary,
.ld-focus-content .safe-assessment__btn--secondary,
.learndash-wrapper .safe-assessment__btn--secondary {
	background: transparent !important;
	color: var(--safe-pacific-ui, #2f6f78) !important;
	border: 1px solid var(--safe-pacific-ui, #2f6f78) !important;
}

.safe-assessment__model {
	margin: 0.85rem 0 1rem;
	padding: 1rem 1.15rem;
	background: var(--safe-soft, #f4f1ea);
	border-radius: 12px;
}

.safe-assessment__model p:last-child {
	margin-bottom: 0;
}

.safe-assessment__review {
	margin: 1rem 0;
	padding-left: 1.2rem;
}

.safe-assessment__review > li {
	margin: 0 0 1.1rem;
}

.safe-assessment__lesson {
	font-size: 0.95rem;
	color: var(--safe-muted-2, #7c7469);
}

.safe-assessment__ifs {
	margin: 0.4rem 0 0;
	padding-left: 1.1rem;
	color: var(--safe-text, #565049);
}

.safe-assessment__safety {
	background: #f7eef0;
	border: 1px solid #e4c9cf;
	border-radius: 12px;
	padding: 1rem 1.15rem;
	margin: 1rem 0 1.25rem;
}

.safe-assessment__safety p:last-child {
	margin-bottom: 0;
}

/* Match formative .safe-check look — specificity beats LD30 quiz CSS */
.safe-assessment .wpProQuiz_content,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content {
	border: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.safe-assessment .wpProQuiz_content > h2,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content > h2 {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 1.5rem !important;
	letter-spacing: -0.01em !important;
	text-transform: none !important;
	font-weight: 600 !important;
	color: var(--safe-heading, #26384a) !important;
	margin: 0 0 0.85rem !important;
	line-height: 1.3 !important;
}

/* Start screen: no card — title + intro + CTA in open flow */
.safe-assessment .wpProQuiz_text,
.safe-assessment-page .learndash-wrapper .wpProQuiz_text {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
	margin: 0 0 2rem !important;
	box-shadow: none !important;
	font-size: 1.05rem;
	line-height: 1.65;
	color: var(--safe-text, #565049);
}

.safe-assessment .wpProQuiz_text > p,
.safe-assessment-page .learndash-wrapper .wpProQuiz_text > p {
	margin: 0 0 0.85rem !important;
	max-width: 42rem;
}

.safe-assessment .wpProQuiz_text > div,
.safe-assessment-page .learndash-wrapper .wpProQuiz_text > div {
	margin-top: 1.35rem !important;
}

.safe-assessment .wpProQuiz_text input[name="startQuiz"],
.safe-assessment-page .learndash-wrapper .wpProQuiz_text input[name="startQuiz"] {
	margin: 0 !important;
}

/* Question cards only (not the start box) */
.safe-assessment .wpProQuiz_listItem,
.safe-assessment-page .learndash-wrapper .wpProQuiz_listItem {
	background: #fff !important;
	border: 1px solid var(--safe-border-cool, #d7dee4) !important;
	border-left: 3px solid var(--safe-pacific-ui, #2f6f78) !important;
	border-radius: 18px !important;
	padding: 1.75rem 2rem 1.85rem !important;
	margin: 0 0 1.25rem !important;
	box-sizing: border-box !important;
	font-size: 1rem;
	line-height: 1.65;
	color: var(--safe-text, #565049);
}

.safe-assessment .wpProQuiz_question_page,
.safe-assessment-page .learndash-wrapper .wpProQuiz_question_page {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 1rem !important;
	letter-spacing: normal !important;
	text-transform: uppercase !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	color: var(--safe-slate, #3D5A6B) !important;
	margin: 0 0 0.85rem !important;
}

.safe-assessment .wpProQuiz_question_text,
.safe-assessment .wpProQuiz_question_text p,
.safe-assessment-page .learndash-wrapper .wpProQuiz_question_text,
.safe-assessment-page .learndash-wrapper .wpProQuiz_question_text p {
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 1.15rem !important;
	line-height: 1.55 !important;
	font-weight: 600 !important;
	color: var(--safe-heading, #26384a) !important;
	margin: 0 0 1.15rem !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionList,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionList {
	list-style: none !important;
	margin: 0 0 0.25rem !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 0.65rem !important;
	counter-reset: safe-opt;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item),
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) {
	counter-increment: safe-opt;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	background: transparent !important;
	border: none !important;
	display: block !important;
	position: relative !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem > span:not(.wpProQuiz_answerText),
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem > span:not(.wpProQuiz_answerText) {
	display: none !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label {
	appearance: none !important;
	display: flex !important;
	align-items: flex-start !important;
	gap: 0.85rem !important;
	width: 100% !important;
	box-sizing: border-box !important;
	text-align: left !important;
	border: 1px solid var(--safe-border-cool, #d7dee4) !important;
	background: #ffffff !important;
	color: var(--safe-heading, #26384a) !important;
	border-radius: 14px !important;
	padding: 0.95rem 1.1rem !important;
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 0.98rem !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
	cursor: pointer !important;
	box-shadow: none !important;
	transition: border-color 0.15s ease, background 0.15s ease;
	margin: 0 !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label::before,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label::before {
	content: counter(safe-opt, upper-alpha) !important;
	flex: 0 0 auto !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 1.75rem !important;
	height: 1.75rem !important;
	border-radius: 999px !important;
	background: #f2f7f7 !important;
	color: var(--safe-pacific-ui, #2f6f78) !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em !important;
	margin: 0.05rem 0 0 0 !important;
	border: none !important;
	box-shadow: none !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label input,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label input,
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem input[type="radio"],
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem input[type="radio"] {
	position: absolute !important;
	opacity: 0 !important;
	width: 1px !important;
	height: 1px !important;
	margin: 0 !important;
	pointer-events: none !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label:hover,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label:hover {
	border-color: var(--safe-pacific-ui, #2f6f78) !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label.is-selected,
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label:has(input:checked),
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label:focus-within,
.safe-assessment .wpProQuiz_questionListItem.is-selected label,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label.is-selected,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label:has(input:checked),
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label:focus-within {
	border-color: var(--safe-pacific-ui, #2f6f78) !important;
	background: #f2f7f7 !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label.is-selected::before,
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label:has(input:checked)::before,
.safe-assessment .wpProQuiz_questionListItem.is-selected label::before,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label.is-selected::before,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label:has(input:checked)::before {
	background: var(--safe-pacific-ui, #2f6f78) !important;
	color: #fff !important;
}

.safe-assessment .wpProQuiz_button,
.safe-assessment input.wpProQuiz_button,
.safe-assessment-page .learndash-wrapper .wpProQuiz_button,
.ld-focus-content .safe-assessment .wpProQuiz_button,
.learndash-wrapper .safe-assessment .wpProQuiz_button {
	appearance: none;
	border: none !important;
	border-radius: 50px !important;
	background: var(--theme-button-background-initial-color, var(--safe-pacific-ui, #2f6f78)) !important;
	color: var(--theme-button-text-initial-color, #fff) !important;
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif) !important;
	font-weight: 500 !important;
	font-size: 15px !important;
	padding: 0.75em 1.5em !important;
	cursor: pointer;
	box-shadow: none !important;
	height: auto !important;
	line-height: 1.3 !important;
	margin: 0.35rem 0.4rem 0 0 !important;
}

.safe-assessment .wpProQuiz_button[name="back"],
.safe-assessment input.wpProQuiz_button[name="back"],
.safe-assessment-page .learndash-wrapper .wpProQuiz_button[name="back"],
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_button[name="back"] {
	background: var(--theme-button-background-initial-color, var(--safe-pacific-ui, #2f6f78)) !important;
	color: #fff !important;
	border: none !important;
}

/* Hide Review Question + Quiz Summary (keep step grid + legend) */
.safe-assessment .wpProQuiz_reviewButtons,
.safe-assessment input[name="review"],
.safe-assessment input[name="quizSummary"],
.safe-assessment .wpProQuiz_button[name="reShowQuestion"],
.safe-assessment input[name="reShowQuestion"],
.safe-assessment input[name="btnQuizSummary"],
.safe-assessment-page .learndash-wrapper .wpProQuiz_reviewButtons,
.safe-assessment-page .learndash-wrapper input[name="review"],
.safe-assessment-page .learndash-wrapper input[name="quizSummary"],
.safe-assessment-page .learndash-wrapper .wpProQuiz_button[name="reShowQuestion"],
.safe-assessment-page .learndash-wrapper input[name="reShowQuestion"],
.safe-assessment-page .learndash-wrapper input[name="btnQuizSummary"] {
	display: none !important;
}

.safe-assessment .wpProQuiz_reviewDiv,
.safe-assessment .wpProQuiz_checkPage,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv {
	background: #fff !important;
	border: 1px solid var(--safe-border-cool, #d7dee4) !important;
	border-radius: 16px !important;
	border-bottom: 1px solid var(--safe-border-cool, #d7dee4) !important;
	padding: 1.15rem 1.25rem 1.25rem !important;
	margin: 0 0 1.5rem !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion ol,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion ol {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 0.5rem !important;
	list-style: none !important;
	margin: 0 0 1rem !important;
	padding: 0 !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li,
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionSkip,
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionReview,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionSkip,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionReview {
	background: #fff !important;
	border: 1px solid var(--safe-border-cool, #d7dee4) !important;
	border-radius: 999px !important;
	color: var(--safe-heading, #26384a) !important;
	min-width: 2.25rem !important;
	height: 2.25rem !important;
	padding: 0 !important;
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: none !important;
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 0.875rem !important;
	font-weight: 600 !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion .learndash-quiz-review__button,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion .learndash-quiz-review__button {
	all: unset !important;
	cursor: pointer !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
	color: inherit !important;
	font: inherit !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li:hover,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li:hover {
	background: #f2f7f7 !important;
	border-color: var(--safe-pacific-ui, #2f6f78) !important;
	color: var(--safe-pacific-ui, #2f6f78) !important;
}

/* Current step */
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionTarget,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionTarget {
	background: var(--safe-pacific-ui, #2f6f78) !important;
	border-color: var(--safe-pacific-ui, #2f6f78) !important;
	color: #fff !important;
}

/* Answered */
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionSolved,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionSolved {
	background: #f2f7f7 !important;
	border-color: var(--safe-pacific-ui, #2f6f78) !important;
	color: var(--safe-pacific-ui, #2f6f78) !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionSolved.wpProQuiz_reviewQuestionTarget,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionSolved.wpProQuiz_reviewQuestionTarget {
	background: var(--safe-pacific-ui, #2f6f78) !important;
	border-color: var(--safe-pacific-ui, #2f6f78) !important;
	color: #fff !important;
}

/* Marked for review */
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionReview,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li.wpProQuiz_reviewQuestionReview {
	background: #fbf6f6 !important;
	border-color: var(--safe-courage-soft, #dd8f99) !important;
	color: var(--safe-courage, #A84E62) !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li:focus,
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li:focus-within,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li:focus,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewQuestion li:focus-within {
	outline: 2px solid var(--safe-pacific-ui, #2f6f78) !important;
	outline-offset: 2px !important;
}

/* Legend: Review / Answered */
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend {
	clear: both !important;
	margin: 0 !important;
	padding: 0 !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend ol,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend ol {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 0.85rem 1.25rem !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend li,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend li {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.45rem !important;
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--theme-font-family, "Rethink Sans", sans-serif) !important;
	font-size: 0.8125rem !important;
	font-weight: 500 !important;
	color: var(--safe-text, #565049) !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend .wpProQuiz_reviewColor,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend .wpProQuiz_reviewColor {
	width: 0.85rem !important;
	height: 0.85rem !important;
	border-radius: 999px !important;
	border: none !important;
	display: inline-block !important;
	flex: 0 0 auto !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend .wpProQuiz_reviewColor_Review,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend .wpProQuiz_reviewColor_Review {
	background: var(--safe-courage, #A84E62) !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend .wpProQuiz_reviewColor_Answer,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend .wpProQuiz_reviewColor_Answer {
	background: #f2f7f7 !important;
	border: 2px solid var(--safe-pacific-ui, #2f6f78) !important;
	box-sizing: border-box !important;
}

.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend .learndash-quiz-review-legend-item-correct,
.safe-assessment .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend .learndash-quiz-review-legend-item-incorrect,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend .learndash-quiz-review-legend-item-correct,
.safe-assessment-page .learndash-wrapper .wpProQuiz_content .wpProQuiz_reviewDiv .wpProQuiz_reviewLegend .learndash-quiz-review-legend-item-incorrect {
	display: none !important;
}

@media (max-width: 640px) {
	.safe-assessment .wpProQuiz_listItem,
	.safe-assessment-page .learndash-wrapper .wpProQuiz_listItem,
	.safe-assessment__closing,
	.safe-assessment__result {
		padding: 1.35rem 1.25rem 1.45rem !important;
	}
}


/* ============================================================
   Module 5 interactions — gate, warm-up, chain
   ============================================================ */
.safe-gate {
	margin: 2rem 0;
}
.safe-gate.is-locked .safe-gate__locked {
	display: block;
	background: var(--safe-sand, #fbfaf8);
	border: 1px dashed var(--safe-border-cool, #d7dee4);
	border-radius: 16px;
	padding: 1.15rem 1.35rem;
	color: var(--safe-muted-2, #7c7469);
	font-size: 0.95rem;
}
.safe-gate.is-open .safe-gate__locked {
	display: none;
}
.safe-gate__body:focus {
	outline: none;
}
.safe-gate__body:focus-visible {
	outline: 2px solid var(--safe-pacific-ui, #2f6f78);
	outline-offset: 4px;
}

.safe-check--soft .safe-check__option.is-selected {
	border-color: var(--safe-pacific-ui, #2f6f78);
	box-shadow: inset 0 0 0 1px var(--safe-pacific-ui, #2f6f78);
}

.safe-check--gate {
	border-left: 3px solid #dd8f99;
	padding-left: 0.85rem;
}

.safe-warmup {
	margin: 2.5rem 0;
	padding: 1.5rem 1.75rem 1.75rem;
	background: var(--safe-sand, #fbfaf8);
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-radius: 18px;
}
.safe-warmup__eyebrow {
	margin: 0 0 0.35rem;
	font-size: 1rem;
	letter-spacing: normal;
	text-transform: uppercase;
	color: var(--safe-slate, #3D5A6B);
	font-weight: 600;
	line-height: 1.4;
}
.safe-warmup__intro {
	margin: 0 0 1.5rem;
	color: var(--safe-text, #565049);
}
.safe-warmup__person {
	margin: 0 0 1.5rem;
	padding-top: 1.25rem;
	border-top: 1px solid var(--safe-border-cool, #d7dee4);
}
.safe-warmup__person:first-of-type {
	border-top: 0;
	padding-top: 0;
}
.safe-warmup__prompt {
	margin: 0 0 0.75rem;
	font-weight: 600;
	color: var(--safe-heading, #26384a);
}
.safe-warmup__options {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}
.safe-warmup__option {
	appearance: none;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	background: #fff;
	border-radius: 999px;
	padding: 0.45rem 0.9rem;
	font: inherit;
	cursor: pointer;
	color: var(--safe-heading, #26384a);
}
.safe-warmup__option:hover,
.safe-warmup__option:focus-visible {
	border-color: var(--safe-pacific-ui, #2f6f78);
}
.safe-warmup__option.is-selected {
	background: var(--safe-pacific-ui, #2f6f78);
	border-color: var(--safe-pacific-ui, #2f6f78);
	color: #fff;
}
.safe-warmup__option:disabled {
	cursor: default;
	opacity: 0.85;
}
.safe-warmup__reveal {
	margin-top: 0.85rem;
	color: var(--safe-text, #565049);
}

.safe-chain {
	margin: 2rem 0 3rem;
}
.safe-chain__eyebrow {
	margin: 0 0 0.35rem;
	font-size: 1rem;
	letter-spacing: normal;
	text-transform: uppercase;
	color: var(--safe-slate, #3D5A6B);
	font-weight: 600;
	line-height: 1.4;
}
.safe-chain__note {
	margin: 0 0 2rem;
	color: var(--safe-text, #565049);
}
.safe-chain__moment {
	margin: 0 0 2.5rem;
	padding: 1.35rem 1.5rem 1.5rem;
	background: var(--safe-sand, #fbfaf8);
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-radius: 18px;
}
.safe-chain__title {
	margin: 0 0 0.75rem;
	font-size: 1.05rem;
	color: var(--safe-heading, #26384a);
}
.safe-chain__opening {
	margin: 0 0 1rem;
	color: var(--safe-text, #565049);
}
.safe-chain__write-prompt {
	margin: 0 0 0.75rem;
	color: var(--safe-muted-2, #7c7469);
	font-size: 0.95rem;
}
.safe-chain__confirm {
	appearance: none;
	border: 0;
	background: var(--safe-midnight, #0C3347);
	color: #fff;
	border-radius: 8px;
	padding: 0.65rem 1.1rem;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
}
.safe-chain__confirm:hover,
.safe-chain__confirm:focus-visible {
	background: var(--safe-pacific-ui, #2f6f78);
}
.safe-chain__options {
	display: grid;
	gap: 0.65rem;
	margin-top: 0.5rem;
}
.safe-chain__option {
	appearance: none;
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.75rem;
	align-items: start;
	text-align: left;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	background: #fff;
	border-radius: 14px;
	padding: 0.85rem 1rem;
	font: inherit;
	cursor: pointer;
	color: var(--safe-heading, #26384a);
}
.safe-chain__option:hover,
.safe-chain__option:focus-visible {
	border-color: var(--safe-pacific-ui, #2f6f78);
}
.safe-chain__option.is-selected {
	border-color: var(--safe-pacific-ui, #2f6f78);
	box-shadow: inset 0 0 0 1px var(--safe-pacific-ui, #2f6f78);
}
.safe-chain__option:disabled {
	cursor: default;
}
.safe-chain__letter {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.6rem;
	height: 1.6rem;
	border-radius: 999px;
	background: var(--safe-dune, #e8e4dd);
	font-size: 0.8rem;
	font-weight: 700;
}
.safe-chain__reveal {
	margin-top: 1rem;
	padding-top: 0.85rem;
	border-top: 1px solid var(--safe-border-cool, #d7dee4);
	color: var(--safe-text, #565049);
}
.safe-chain__panel {
	margin-top: 2rem;
	padding: 1.5rem 1.75rem;
	background: var(--safe-pearl, #F6F5F3);
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-radius: 18px;
}
.safe-chain__panel-lines {
	margin: 1rem 0;
	padding-left: 1.2rem;
	color: var(--safe-heading, #26384a);
}
.safe-chain__panel-lines li {
	margin: 0 0 0.65rem;
}
.safe-chain__panel-close {
	margin: 1rem 0 0;
	color: var(--safe-text, #565049);
}
.safe-chain__panel:focus {
	outline: none;
}
.safe-chain__panel:focus-visible {
	outline: 2px solid var(--safe-pacific-ui, #2f6f78);
	outline-offset: 4px;
}

/* Module 5 · I-12.1 route selector */
.safe-routes {
	margin: 1.5rem 0 1.75rem;
	padding: 1.15rem 1.2rem 1.25rem;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-radius: 18px;
	background: #fbfaf8;
}

.safe-routes__eyebrow {
	margin: 0 0 0.4rem;
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: normal;
	text-transform: uppercase;
	line-height: 1.4;
	color: var(--safe-slate, #3D5A6B);
}

.safe-routes__intro,
.safe-routes__hint {
	margin: 0 0 0.85rem;
	font-size: 0.98rem;
	line-height: 1.55;
	color: var(--safe-heading, #26384a);
}

.safe-routes__hint {
	margin-top: 0.65rem;
	font-size: 0.92rem;
	color: var(--safe-text, #565049);
}

.safe-routes__choices {
	display: grid;
	gap: 0.55rem;
}

@media (min-width: 720px) {
	.safe-routes__choices {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.safe-routes__choice {
	appearance: none !important;
	-webkit-appearance: none !important;
	border: 1px solid var(--safe-border-cool, #d7dee4) !important;
	border-radius: 12px !important;
	background: #fff !important;
	background-color: #fff !important;
	color: var(--safe-heading, #3D5A6B) !important;
	padding: 0.85rem 0.95rem !important;
	font: inherit !important;
	font-size: 0.95rem !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	text-align: left !important;
	text-decoration: none !important;
	box-shadow: none !important;
	cursor: pointer;
}

.safe-routes__choice.is-preferred {
	border-color: #b7c9cd !important;
}

.safe-routes__choice:hover,
.safe-routes__choice:focus-visible {
	border-color: var(--safe-slate, #3D5A6B) !important;
	background: #f4f7f8 !important;
	background-color: #f4f7f8 !important;
	color: var(--safe-heading, #3D5A6B) !important;
	outline: none;
}

.safe-routes__choice.is-selected,
.safe-routes__choice.is-selected:hover,
.safe-routes__choice.is-selected:focus-visible {
	border-color: var(--safe-slate, #3D5A6B) !important;
	background: var(--safe-slate, #3D5A6B) !important;
	background-color: var(--safe-slate, #3D5A6B) !important;
	color: #fff !important;
	box-shadow: none !important;
}

.safe-routes__panel {
	margin-top: 1rem;
}

.safe-routes__panel.is-primary {
	outline: none;
}

.safe-routes__others-wrap {
	margin: 1rem 0 0;
}

.safe-routes__others {
	appearance: none;
	border: 0;
	background: none;
	padding: 0;
	font: inherit;
	font-size: 0.95rem;
	font-weight: 650;
	color: var(--safe-pacific-ui, #2f6f78);
	text-decoration: none !important;
	cursor: pointer;
}

.safe-routes__others:hover,
.safe-routes__others:focus-visible {
	color: var(--safe-heading, #3D5A6B);
	text-decoration: none !important;
}

/* ============================================================
   EMPATHY MAP — light coral four-quadrant grid
   ============================================================ */
.safe-empathy,
.ld-focus-content .safe-empathy,
.learndash-wrapper .safe-empathy {
	background: #fdf2f3;
	border: 1px solid #f0d4d8;
	border-radius: 18px;
	padding: 1.5rem 1.6rem 1.65rem;
	margin: 2rem 0;
	box-sizing: border-box;
}

.safe-empathy__eyebrow {
	font-size: 1rem;
	letter-spacing: normal;
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1.4;
	color: var(--safe-slate, #3D5A6B);
	margin: 0 0 0.65rem;
}

.safe-empathy__prompt {
	margin: 0 0 1.1rem;
	font-size: 1.05rem;
	line-height: 1.55;
	font-weight: 600;
	color: var(--safe-heading, #26384a);
}

.safe-empathy__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.85rem;
	margin: 0 0 1rem;
}

.safe-empathy__cell {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	background: #fff;
	border: 1px solid #f0d4d8;
	border-radius: 12px;
	padding: 0.85rem 0.95rem 1rem;
	margin: 0;
}

.safe-empathy__label {
	font-size: 0.6875rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 700;
	color: #c47a86;
}

.safe-empathy__input {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--safe-border, #e4e0d8);
	border-radius: 10px;
	padding: 0.7rem 0.8rem;
	font: inherit;
	line-height: 1.5;
	color: var(--safe-text, #565049);
	background: #fff;
	resize: vertical;
	min-height: 4.5rem;
}

.safe-empathy__input:focus {
	outline: 2px solid #c47a86;
	outline-offset: 2px;
	border-color: #c47a86;
}

.safe-empathy__privacy {
	font-size: 0.875rem;
	color: var(--safe-muted-2, #7c7469);
	margin: 0 0 0.85rem;
}

.safe-empathy__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	align-items: center;
}

.safe-empathy__submit {
	appearance: none;
	border: none;
	border-radius: 50px;
	background: #c47a86;
	color: #fff;
	font-weight: 600;
	font-size: 0.9rem;
	padding: 0.65em 1.35em;
	cursor: pointer;
}

.safe-empathy__submit:hover {
	background: #b56b77;
}

.safe-empathy__retry {
	display: inline-block;
	padding: 0.45rem 0.95rem;
	border: 1px solid #c47a86;
	border-radius: 999px;
	background: transparent;
	color: #c47a86;
	font-size: 0.8125rem;
	font-weight: 600;
	cursor: pointer;
}

.safe-empathy__error {
	color: var(--safe-courage, #A84E62);
	margin: 0.65rem 0 0;
}

.safe-empathy__reveal {
	margin-top: 1rem;
	padding-top: 0.85rem;
	border-top: 1px solid #f0d4d8;
	color: var(--safe-text, #565049);
}

@media (max-width: 640px) {
	.safe-empathy__grid {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   REFLECTION PAIR — side-by-side fields (myth-style)
   ============================================================ */
.safe-reflection__pair-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.85rem;
	margin: 0 0 0.85rem;
}

.safe-reflection__pair-cell {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	margin: 0;
	padding: 1rem 1.1rem;
	background: #fff;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-radius: 14px;
}

.safe-reflection__pair-label {
	font-size: 0.6875rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 700;
	color: var(--safe-pacific-ui, #2f6f78);
}

@media (max-width: 640px) {
	.safe-reflection__pair-grid {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   QUOTES — light coral callout style
   One size sitewide (slightly under previous title-scale).
   ============================================================ */
.ld-focus-content .wp-block-quote,
.learndash-wrapper .wp-block-quote,
.single-sfwd-courses .wp-block-quote,
.single-sfwd-lessons .wp-block-quote,
.single-sfwd-topic .wp-block-quote,
.ld-focus-content .wp-block-quote.safe-quote--featured,
.learndash-wrapper .wp-block-quote.safe-quote--featured,
.single-sfwd-topic .wp-block-quote.safe-quote--featured {
	margin: 2rem 0;
	padding: 1.25rem 1.4rem 1.3rem 1.25rem;
	background: #fdf2f3;
	border: none;
	border-left: 3px solid #dd8f99;
	border-radius: 18px;
	box-shadow: none;
}

.ld-focus-content .wp-block-quote p,
.learndash-wrapper .wp-block-quote p,
.single-sfwd-courses .wp-block-quote p,
.single-sfwd-lessons .wp-block-quote p,
.single-sfwd-topic .wp-block-quote p,
.ld-focus-content .wp-block-quote.safe-quote--featured p,
.learndash-wrapper .wp-block-quote.safe-quote--featured p,
.single-sfwd-topic .wp-block-quote.safe-quote--featured p {
	margin: 0 !important;
	font-family: "Zalando Sans SemiExpanded", sans-serif !important;
	font-size: clamp(1.15rem, 2vw, 1.45rem) !important;
	line-height: 1.4 !important;
	letter-spacing: -0.015em !important;
	font-weight: 400 !important;
	font-style: normal !important;
	color: var(--safe-heading, #3D5A6B) !important;
}

.ld-focus-content .wp-block-quote p:first-of-type::before,
.learndash-wrapper .wp-block-quote p:first-of-type::before,
.single-sfwd-courses .wp-block-quote p:first-of-type::before,
.single-sfwd-lessons .wp-block-quote p:first-of-type::before,
.single-sfwd-topic .wp-block-quote p:first-of-type::before {
	content: "\201C";
}

.ld-focus-content .wp-block-quote p:last-of-type::after,
.learndash-wrapper .wp-block-quote p:last-of-type::after,
.single-sfwd-courses .wp-block-quote p:last-of-type::after,
.single-sfwd-lessons .wp-block-quote p:last-of-type::after,
.single-sfwd-topic .wp-block-quote p:last-of-type::after {
	content: "\201D";
}

.ld-focus-content .wp-block-quote cite,
.learndash-wrapper .wp-block-quote cite,
.single-sfwd-courses .wp-block-quote cite,
.single-sfwd-lessons .wp-block-quote cite,
.single-sfwd-topic .wp-block-quote cite {
	display: block;
	margin-top: 0.75rem;
	font-family: inherit !important;
	font-size: 1.125rem !important;
	line-height: 1.85 !important;
	font-style: normal !important;
	letter-spacing: normal !important;
	color: var(--safe-text, #565049) !important;
}

/* Collapsible audio transcripts */
.safe-transcript {
	margin: 0.65rem 0 1.15rem;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-radius: 10px;
	background: #fbfaf8;
	padding: 0.35rem 0.85rem 0.55rem;
}

.safe-transcript > summary {
	cursor: pointer;
	list-style: none;
	font-size: 0.9rem;
	font-weight: 600;
	color: var(--safe-pacific-ui, #2f6f78);
	padding: 0.45rem 0;
}

.safe-transcript > summary::-webkit-details-marker {
	display: none;
}

.safe-transcript > summary::before {
	content: "▸ ";
	display: inline-block;
	transition: transform 0.15s ease;
}

.safe-transcript[open] > summary::before {
	transform: rotate(90deg);
}

.safe-transcript p {
	margin: 0.35rem 0 0.55rem;
	font-size: 0.95rem;
	line-height: 1.55;
	color: var(--safe-heading, #26384a);
}

/* Module “on one page” collapsible recaps (Week 11) */
.safe-onepager {
	margin: 1rem 0 1.35rem;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-radius: 10px;
	background: #fbfaf8;
	padding: 0.35rem 0.95rem 0.65rem;
}

.safe-onepager > summary {
	cursor: pointer;
	list-style: none;
	font-size: 0.95rem;
	font-weight: 650;
	letter-spacing: 0.02em;
	color: var(--safe-pacific-ui, #2f6f78);
	padding: 0.55rem 0;
}

.safe-onepager > summary::-webkit-details-marker {
	display: none;
}

.safe-onepager > summary::before {
	content: "▸ ";
	display: inline-block;
	transition: transform 0.15s ease;
}

.safe-onepager[open] > summary::before {
	transform: rotate(90deg);
}

.safe-onepager .wp-block-paragraph,
.safe-onepager p {
	margin: 0.4rem 0 0.65rem;
	font-size: 0.98rem;
	line-height: 1.55;
	color: var(--safe-heading, #26384a);
}

/* ============================================================
   DANIEL RECALL — button + modal
   ============================================================ */
.safe-daniel-recall {
	margin: 1.5rem 0;
}

.safe-daniel-recall__btn {
	appearance: none;
	border: 1px solid var(--safe-pacific-ui, #2f6f78);
	border-radius: 999px;
	background: transparent;
	color: var(--safe-pacific-ui, #2f6f78);
	font-weight: 600;
	font-size: 0.9rem;
	padding: 0.55em 1.25em;
	cursor: pointer;
}

.safe-daniel-recall__btn:hover {
	background: var(--safe-pacific-ui, #2f6f78);
	color: #fff;
}

.safe-daniel-modal {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1.25rem;
}

.safe-daniel-modal[hidden] {
	display: none !important;
}

.safe-daniel-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(12, 51, 71, 0.45);
}

.safe-daniel-modal__panel {
	position: relative;
	z-index: 1;
	width: min(560px, 100%);
	max-height: min(80vh, 640px);
	overflow: auto;
	background: #fff;
	border-radius: 16px;
	padding: 1.35rem 1.5rem 1.5rem;
	box-shadow: 0 18px 50px rgba(12, 51, 71, 0.22);
}

.safe-daniel-modal__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 0.85rem;
}

.safe-daniel-modal__title {
	margin: 0;
	font-size: 1.15rem;
	color: var(--safe-heading, #26384a);
}

.safe-daniel-modal__close {
	appearance: none;
	border: none;
	background: transparent;
	font-size: 1.6rem;
	line-height: 1;
	cursor: pointer;
	color: var(--safe-muted-2, #7c7469);
	padding: 0 0.15rem;
}

.safe-daniel-modal__body p {
	margin: 0 0 0.85rem;
	color: var(--safe-text, #565049);
	line-height: 1.65;
}

body.safe-daniel-open {
	overflow: hidden;
}

/* ============================================================
   PRACTICE ARENA — sequential moments (Module 2 Thomas)
   ============================================================ */
.safe-arena {
	margin: 2rem 0 2.5rem;
}

.safe-arena__support {
	margin: 0 0 1.25rem;
	padding: 0.9rem 1.1rem;
	background: #f7fafb;
	border-left: 3px solid var(--safe-pacific-ui, #2f6f78);
	border-radius: 0 10px 10px 0;
	font-size: 0.95rem;
	line-height: 1.5;
	color: var(--safe-heading, #26384a);
}

.safe-arena__support--inline {
	margin: 0.5rem 0 1rem;
}

.safe-arena__recall {
	margin: 0 0 1.5rem;
	font-size: 0.95rem;
	color: var(--safe-muted-2, #7c7469);
}

.safe-arena__moment {
	margin: 0 0 2.25rem;
	padding: 1.25rem 1.35rem 1.4rem;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-radius: 14px;
	background: #fff;
}

.safe-arena__moment--gate {
	border-left: 3px solid #dd8f99;
}

.safe-arena__moment-title {
	margin: 0 0 0.75rem;
	font-size: 1.15rem;
	color: var(--safe-heading, #26384a);
}

.safe-arena__situation {
	margin: 0 0 1rem;
	line-height: 1.55;
}

.safe-arena__audio {
	margin: 0 0 1.1rem;
}

.safe-arena__audio audio {
	width: 100%;
	max-width: 420px;
	display: block;
	margin-bottom: 0.5rem;
}

.safe-arena__choose-label {
	margin: 0 0 0.65rem;
	font-weight: 600;
	font-size: 0.95rem;
}

.safe-arena__options {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	margin: 0 0 1rem;
}

.safe-arena__option {
	appearance: none;
	-webkit-appearance: none;
	text-align: left;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	background: #fbfaf8;
	color: var(--safe-heading, #26384a);
	border-radius: 12px;
	padding: 0.85rem 1.05rem;
	font-family: inherit;
	font-size: 0.98rem;
	line-height: 1.45;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease;
}

.safe-arena__option:hover:not(:disabled) {
	border-color: var(--theme-button-background-hover-color, var(--theme-palette-color-1, #0C3347)) !important;
	background: var(--theme-button-background-hover-color, var(--theme-palette-color-1, #0C3347)) !important;
	background-color: var(--theme-button-background-hover-color, var(--theme-palette-color-1, #0C3347)) !important;
	color: var(--theme-button-text-hover-color, #ffffff) !important;
}

.safe-arena__option.is-selected {
	border-color: var(--safe-pacific-ui, #2f6f78);
	box-shadow: inset 0 0 0 1px var(--safe-pacific-ui, #2f6f78);
	background: #fff;
}

.safe-arena__option:disabled {
	opacity: 0.85;
	cursor: default;
}

.safe-arena__feedback {
	margin: 0.85rem 0 0.75rem;
	padding: 1rem 1.1rem;
	background: #f7fafb;
	border-radius: 12px;
}

.safe-arena__fb-line {
	margin: 0 0 0.55rem;
	font-size: 0.95rem;
	line-height: 1.5;
}

.safe-arena__fb-line:last-child {
	margin-bottom: 0;
}

.safe-arena__gate-msg {
	margin: 0.85rem 0 0;
	padding: 0.65rem 0.75rem;
	background: #fdf2f3;
	border-radius: 8px;
	color: #7a3a42;
	font-weight: 600;
	font-size: 0.92rem;
}

.safe-arena__try-another {
	appearance: none;
	margin-top: 0.35rem;
	border: 1px solid var(--safe-pacific-ui, #2f6f78);
	background: transparent;
	color: var(--safe-pacific-ui, #2f6f78);
	border-radius: 50px;
	padding: 0.55em 1.2em;
	font-family: inherit;
	font-size: 0.9rem;
	font-weight: 600;
	cursor: pointer;
}

.safe-arena__calibration {
	margin-top: 1.5rem;
}

.safe-arena__moment[hidden],
.safe-arena__calibration[hidden],
.safe-arena__feedback[hidden],
.safe-arena__try-another[hidden],
.safe-arena__recall[hidden],
.safe-arena__gate-msg[hidden] {
	display: none !important;
}


/* ============================================================
   MODULE ASSESSMENT LANDING — large Start button (after close)
   ============================================================ */
.ld-focus-content .safe-assessment-cta-lead,
.learndash-wrapper .safe-assessment-cta-lead,
.safe-assessment-cta-lead {
	font-size: 1.15rem;
	line-height: 1.55;
	color: var(--safe-text, #565049);
	margin: 0 0 1.25rem;
	max-width: 36rem;
}

.ld-focus-content .wp-block-buttons.safe-assessment-cta,
.learndash-wrapper .wp-block-buttons.safe-assessment-cta,
.wp-block-buttons.safe-assessment-cta {
	margin: 1.75rem 0 2.5rem;
}

.ld-focus-content .safe-assessment-cta .wp-block-button__link,
.learndash-wrapper .safe-assessment-cta .wp-block-button__link,
.safe-assessment-cta .wp-block-button__link,
.ld-focus-content .safe-assessment-cta-btn .wp-block-button__link,
.learndash-wrapper .safe-assessment-cta-btn .wp-block-button__link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 3.25rem !important;
	padding: 0.95rem 2.1rem !important;
	font-size: 1.125rem !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	border-radius: 50px !important;
	background: var(--theme-button-background-initial-color, var(--theme-palette-color-1, #0C3347)) !important;
	background-color: var(--theme-button-background-initial-color, var(--theme-palette-color-1, #0C3347)) !important;
	color: #fff !important;
	text-decoration: none !important;
	border: none !important;
	box-shadow: none !important;
}

.ld-focus-content .safe-assessment-cta .wp-block-button__link:hover,
.learndash-wrapper .safe-assessment-cta .wp-block-button__link:hover,
.safe-assessment-cta .wp-block-button__link:hover {
	background: var(--theme-button-background-hover-color, var(--theme-palette-color-1, #0C3347)) !important;
	background-color: var(--theme-button-background-hover-color, var(--theme-palette-color-1, #0C3347)) !important;
	color: #fff !important;
	opacity: 1 !important;
}

/* Also enlarge the native Start on the quiz page itself */
.safe-assessment .wpProQuiz_text input[name="startQuiz"],
.safe-assessment-page .learndash-wrapper .wpProQuiz_text input[name="startQuiz"],
.safe-assessment .wpProQuiz_button[name="startQuiz"],
.safe-assessment-page .learndash-wrapper .wpProQuiz_button[name="startQuiz"] {
	min-height: 3.25rem !important;
	padding: 0.95rem 2.1rem !important;
	font-size: 1.125rem !important;
	font-weight: 600 !important;
}

/* ============================================================
   LIST REVEAL — fill-in + popup model list (e.g. 2.3 collapse)
   ============================================================ */
.safe-list-reveal {
	margin: 0.5rem 0 0.25rem;
}
.safe-list-reveal__prompt {
	margin: 0 0 0.5rem;
	color: var(--safe-text, #565049);
	line-height: 1.65;
}
.safe-list-reveal__hint {
	margin: 0 0 0.75rem;
	font-size: 0.95rem;
	color: var(--safe-muted-2, #7c7469);
}
.safe-list-reveal__notes {
	display: block;
	width: 100%;
	box-sizing: border-box;
	min-height: 11rem;
	padding: 0.85rem 1rem;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-radius: 12px;
	font: inherit;
	line-height: 1.55;
	color: var(--safe-text, #565049);
	background: #fff;
	resize: vertical;
}
.safe-list-reveal__notes:focus {
	outline: 2px solid var(--safe-pacific-ui, #2f6f78);
	outline-offset: 1px;
}
.safe-list-reveal__actions {
	margin: 1rem 0 0;
}
.safe-list-reveal__btn {
	appearance: none;
	border: none;
	border-radius: 50px;
	padding: 0.7rem 1.4rem;
	min-height: 2.75rem;
	font-family: var(--theme-button-font-family, "Rethink Sans", sans-serif);
	font-weight: 600;
	font-size: 0.95rem;
	cursor: pointer;
	background: var(--theme-button-background-initial-color, #0C3347);
	color: #fff;
}
.safe-list-reveal__btn:hover {
	opacity: 0.92;
}
.safe-list-reveal-modal {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1.25rem;
}
.safe-list-reveal-modal[hidden] {
	display: none !important;
}
.safe-list-reveal-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(12, 51, 71, 0.45);
}
.safe-list-reveal-modal__panel {
	position: relative;
	z-index: 1;
	width: min(560px, 100%);
	max-height: min(80vh, 640px);
	overflow: auto;
	background: #fff;
	border-radius: 16px;
	padding: 1.35rem 1.5rem 1.5rem;
	box-shadow: 0 18px 50px rgba(12, 51, 71, 0.22);
}
.safe-list-reveal-modal__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 0.85rem;
}
.safe-list-reveal-modal__title {
	margin: 0;
	font-size: 1.15rem;
	color: var(--safe-heading, #26384a);
}
.safe-list-reveal-modal__close {
	appearance: none;
	border: none;
	background: transparent;
	font-size: 1.6rem;
	line-height: 1;
	cursor: pointer;
	color: var(--safe-muted-2, #7c7469);
	padding: 0 0.15rem;
}
.safe-list-reveal__items {
	margin: 0;
	padding-left: 1.25rem;
	color: var(--safe-text, #565049);
	line-height: 1.55;
}
.safe-list-reveal__items li {
	margin: 0 0 0.55rem;
}
body.safe-list-reveal-open {
	overflow: hidden;
}

/* ============================================================
   SAFE RANK — private top-N ordering (e.g. 3.4 biases)
   ============================================================ */
.safe-rank {
	margin: 0.35rem 0 0.25rem;
}
.safe-rank__prompt {
	margin: 0 0 0.45rem;
	color: var(--safe-text, #565049);
	line-height: 1.65;
}
.safe-rank__hint {
	margin: 0 0 0.85rem;
	font-size: 0.95rem;
	color: var(--safe-muted-2, #7c7469);
}
.safe-rank__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}
.safe-rank__item {
	display: grid;
	grid-template-columns: auto auto 1fr auto;
	align-items: center;
	gap: 0.65rem;
	padding: 0.75rem 0.85rem;
	background: #fff;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	border-radius: 12px;
	cursor: grab;
	color: var(--safe-text, #565049);
	line-height: 1.45;
}
.safe-rank__item.is-dragging {
	opacity: 0.55;
}
.safe-rank__handle {
	color: var(--safe-muted-2, #7c7469);
	letter-spacing: -0.12em;
	user-select: none;
}
.safe-rank__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.6rem;
	height: 1.6rem;
	border-radius: 999px;
	background: var(--safe-sand, #fbfaf8);
	border: 1px solid var(--safe-border-cool, #d7dee4);
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--safe-slate, #3D5A6B);
}
.safe-rank__moves {
	display: inline-flex;
	gap: 0.25rem;
}
.safe-rank__up,
.safe-rank__down {
	appearance: none;
	border: 1px solid var(--safe-border-cool, #d7dee4);
	background: #fff;
	border-radius: 8px;
	width: 2rem;
	height: 2rem;
	cursor: pointer;
	color: var(--safe-slate, #3D5A6B);
	font-size: 0.95rem;
	line-height: 1;
}
.safe-rank__up:hover,
.safe-rank__down:hover {
	border-color: var(--safe-pacific-ui, #2f6f78);
	color: var(--safe-pacific-ui, #2f6f78);
}

/* Hide duplicate eyebrow when scenario shortcode sits inside callout-scenario */
.callout-scenario .safe-check__eyebrow {
	display: none;
}
.callout-scenario .safe-check {
	margin: 0.35rem 0 0.75rem;
}
