/* =============================================================================
   קיר זיכרון — Public CSS v2.1
   Open Sans, RTL, dark atmospheric, brand integration.

   Font: "Open Sans", Arial, sans-serif — self-contained, theme-isolated.
   ============================================================================= */

/* ── Brand integration ──────────────────────────────────────────────────────── */
.hmc-root {
	--hmc-font:        "Open Sans", Arial, sans-serif;
	--hmc-radius:      4px;
	--hmc-radius-lg:   8px;

	--hmc-bg:          #0C0E14;
	--hmc-bg-item:     #11141E;
	--hmc-bg-item-h:   #161A28;
	--hmc-text:        #E0D8CC;
	--hmc-text-muted:  #7A7265;
	--hmc-text-dim:    #3A3830;
	--hmc-gold:        #C89A3C;
	--hmc-gold-light:  #E0B850;
	--hmc-border:      rgba(200,180,120,.10);
	--hmc-border-warm: rgba(200,180,120,.26);
	--hmc-glow:        rgba(200,160,60,.14);
	--hmc-modal-bg:    rgba(6,7,11,.94);
}

/* ── Reset ──────────────────────────────────────────────────────────────────── */
.hmc-root *,
.hmc-root *::before,
.hmc-root *::after { box-sizing: border-box; margin: 0; padding: 0; }
/* ── Theme isolation — explicit resets for all plugin controls ──────────────── */
.hmc-root button,
.hmc-root [type="button"],
.hmc-root [type="submit"],
.hmc-root input,
.hmc-root textarea,
.hmc-root select {
	-webkit-appearance: none;
	appearance: none;
	font-family: "Open Sans", Arial, sans-serif;
	box-sizing: border-box;
	box-shadow: none !important;
	text-transform: none;
	letter-spacing: normal;
	line-height: 1.4;
	border-radius: 0;
}
.hmc-root button,
.hmc-root [type="button"],
.hmc-root [type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	cursor: pointer;
	outline: none;
	background: none;
	border: none;
	padding: 0;
	margin: 0;
	width: auto;
	height: auto;
	min-height: 0;
	font-weight: normal;
	color: inherit;
	white-space: normal;
}

.hmc-root {
	font-family: var(--hmc-font);
	color: var(--hmc-text);
	direction: rtl;
	-webkit-font-smoothing: antialiased;
}

/* ── Wall ───────────────────────────────────────────────────────────────────── */
.hmc-wall {
	background: var(--hmc-bg);
	padding: 48px 28px 56px;
	position: relative;
	overflow: hidden;
}
.hmc-wall::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0; height: 130px;
	background: radial-gradient(ellipse at 50% 0%, rgba(200,160,60,.06) 0%, transparent 72%);
	pointer-events: none;
}
.hmc-wall-title {
	text-align: center;
	font-family: var(--hmc-font);
	font-size: clamp(17px,2.8vw,24px);
	font-weight: 300;
	letter-spacing: .04em;
	color: var(--hmc-text);
	margin-bottom: 6px;
	direction: rtl;
}
.hmc-wall-subtitle {
	text-align: center;
	font-size: 13px;
	color: var(--hmc-text-muted);
	margin-bottom: 40px;
	font-style: italic;
	direction: rtl;
}

/* ── Candle grid — desktop ──────────────────────────────────────────────────── */
.hmc-candle-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(122px,1fr));
	gap: 14px 8px;
	max-width: 880px;
	margin: 0 auto;
}

/* ── Mobile carousel ────────────────────────────────────────────────────────── */
@media (max-width: 640px) {
	.hmc-wall { padding: 32px 0 44px; }
	.hmc-wall-title, .hmc-wall-subtitle { padding: 0 18px; }
	.hmc-candle-grid {
		display: flex;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		padding: 0 28px 14px;
		gap: 0;
	}
	.hmc-candle-grid::-webkit-scrollbar { display: none; }
	.hmc-candle-item { flex: 0 0 auto; width: 144px; scroll-snap-align: center; margin-left: 8px; }
	.hmc-candle-item:last-child { margin-left: 28px; }
}
@media (min-width: 641px) and (max-width: 880px) {
	.hmc-candle-grid { grid-template-columns: repeat(3,1fr); }
}

/* ── Candle item ─────────────────────────────────────────────────────────────── */
.hmc-candle-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 7px;
	padding: 18px 8px 14px;
	background: rgba(17,20,30,.78);
	border: 1px solid var(--hmc-border);
	border-radius: var(--hmc-radius);
	cursor: pointer;
	position: relative;
	transition: border-color .3s, background .3s;
	-webkit-tap-highlight-color: transparent;
}
.hmc-candle-item:hover, .hmc-candle-item:focus-visible {
	background: var(--hmc-bg-item-h);
	border-color: var(--hmc-border-warm);
	outline: none;
}
.hmc-candle-item:focus-visible { box-shadow: 0 0 0 2px var(--hmc-gold); }
.hmc-candle-item::after {
	content: '';
	position: absolute; top: 0; left: 50%;
	transform: translateX(-50%);
	width: 100px; height: 80px;
	background: radial-gradient(ellipse, var(--hmc-glow) 0%, transparent 68%);
	pointer-events: none; opacity: 0;
	transition: opacity .5s;
}
.hmc-candle-item:hover::after { opacity: 1; }

/* ── Candle SVG wrapper — 20% smaller than v2 ───────────────────────────────── */
.hmc-candle-svg-wrap {
	width: 45px;
	height: 123px;
	flex-shrink: 0;
	overflow: visible;
	position: relative;
}
.hmc-candle-svg-wrap svg { width: 100%; height: 100%; overflow: visible; }

/* ── Dedication chat-bubble icon ─────────────────────────────────────────────── */
.hmc-ded-bubble {
	width: 18px; height: 18px;
	padding: 0;
	background: transparent;
	border: 1px solid rgba(200,180,120,.28) !important;
	border-radius: 50% !important;
	display: inline-flex !important;
	align-items: center; justify-content: center;
	cursor: pointer;
	transition: background .2s, border-color .2s;
	flex-shrink: 0;
	color: rgba(200,180,120,.55);
}
.hmc-ded-bubble:hover { background: rgba(200,154,60,.22); border-color: var(--hmc-gold) !important; color: var(--hmc-gold); }
.hmc-ded-bubble svg { width: 9px; height: 9px; pointer-events: none; }

/* ── Flame animation ─────────────────────────────────────────────────────────── */
@keyframes hmc-flicker {
	0%  { transform: rotate(0deg) scaleX(1); opacity: 1; }
	18% { transform: rotate(calc(var(--hmc-tilt,2deg)*-1)) scaleX(var(--hmc-smin,.90)); opacity: .92; }
	38% { transform: rotate(calc(var(--hmc-tilt,2deg)*.6)) scaleX(1); opacity: .97; }
	55% { transform: rotate(calc(var(--hmc-tilt,2deg)*.9)) scaleX(var(--hmc-smax,1.07)); opacity: .98; }
	72% { transform: rotate(calc(var(--hmc-tilt,2deg)*-.4)) scaleX(.96); opacity: .97; }
	88% { transform: rotate(calc(var(--hmc-tilt,2deg)*.3)) scaleX(1.02); opacity: .99; }
	100%{ transform: rotate(0deg) scaleX(1); opacity: 1; }
}
@keyframes hmc-glow-pulse { 0%,100%{opacity:.28;transform:scale(1)} 50%{opacity:.62;transform:scale(1.08)} }
@keyframes hmc-halo { 0%,100%{opacity:.14} 50%{opacity:.30} }

/* Base (kept for any future use) */
.hmc-flame { transform-origin:50% 100%; transform-box:fill-box; will-change:transform,opacity; }
.hmc-flame-glow { transform-box:fill-box; transform-origin:50% 60%; }
.hmc-flame-halo { transform-box:fill-box; transform-origin:50% 50%; }

/* Live wall — !important defeats any Elementor/theme animation:none override */
.hmc-candle-grid .hmc-flame {
	animation: hmc-flicker var(--hmc-fd,2.2s) ease-in-out var(--hmc-fdelay,0s) infinite !important;
}
.hmc-candle-grid .hmc-flame-glow {
	animation: hmc-glow-pulse var(--hmc-gd,2.8s) ease-in-out var(--hmc-gdelay,-.4s) infinite !important;
}
.hmc-candle-grid .hmc-flame-halo {
	animation: hmc-halo var(--hmc-hd,3.4s) ease-in-out var(--hmc-hdelay,-1.2s) infinite !important;
}
@media (prefers-reduced-motion:reduce) {
	.hmc-candle-grid .hmc-flame,
	.hmc-candle-grid .hmc-flame-glow,
	.hmc-candle-grid .hmc-flame-halo { animation:none !important; }
}
/* ── Mini candle previews in style picker — no animation ────────────────────── */
.hmc-style-candle-preview .hmc-flame,
.hmc-style-candle-preview .hmc-flame-glow,
.hmc-style-candle-preview .hmc-flame-halo {
	animation: none !important;
	transform: none !important;
}


/* ── Portrait ────────────────────────────────────────────────────────────────── */
.hmc-candle-portrait {
	width: 32px; height: 32px;
	border-radius: 50%; overflow: hidden;
	border: 1.5px solid rgba(200,180,120,.28);
}
.hmc-candle-portrait img { width:100%; height:100%; object-fit:cover; }
.hmc-candle-portrait--empty {
	background: rgba(200,180,120,.06);
	display: flex; align-items:center; justify-content:center;
}
.hmc-candle-portrait--empty svg { width:14px; height:14px; opacity:.22; color:var(--hmc-gold); }

/* ── Memorial label ──────────────────────────────────────────────────────────── */
.hmc-memorial-label {
	font-size: 11px;
	color: var(--hmc-text-muted);
	text-align: center;
	direction: rtl;
	line-height: 1.5;
	font-style: italic;
	max-width: 118px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	opacity: .85;
}
.hmc-memorial-label strong { color: var(--hmc-text-muted); font-weight: 500; font-style: normal; }

/* ── Lighter meta — heart + name ─────────────────────────────────────────────── */
/* ── Meta row: ♥ lighter name chat-bubble — centered, one line ───────────── */
.hmc-meta-row {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	width: 100%;
	padding: 0 4px;
	min-height: 22px;
}
.hmc-meta-heart {
	color: rgba(210,110,100,.78);
	font-size: 13px;
	line-height: 1;
	flex-shrink: 0;
}
.hmc-meta-name {
	font-size: 10px;
	color: var(--hmc-text-dim);
	direction: rtl;
	line-height: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 80px;
}

/* ── Load more / states ──────────────────────────────────────────────────────── */
.hmc-load-more-wrap { text-align:center; margin-top:40px; }
.hmc-load-more {
	background:none; border:1px solid var(--hmc-border-warm);
	color:var(--hmc-text-muted); padding:9px 32px;
	font-family:var(--hmc-font); font-size:13px; font-style:italic;
	cursor:pointer; border-radius:var(--hmc-radius);
	transition:color .22s, border-color .22s; direction:rtl;
}
.hmc-load-more:hover { color:var(--hmc-text); border-color:var(--hmc-gold); }
.hmc-loading, .hmc-empty {
	text-align:center; color:var(--hmc-text-muted);
	font-style:italic; padding:60px 20px;
	grid-column:1/-1; direction:rtl; line-height:1.8;
}

/* ============================================================================
   ACCORDION
   ============================================================================ */
.hmc-accordion { background:var(--hmc-bg); }

.hmc-accordion-trigger {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 24px;
	background: var(--hmc-bg-item);
	border: 1px solid var(--hmc-border);
	border-top: 1px solid var(--hmc-border-warm);
	color: var(--hmc-text-muted);
	font-family: var(--hmc-font);
	font-size: 14px;
	font-style: italic;
	cursor: pointer;
	direction: rtl;
	text-align: right;
	transition: color .22s, background .22s, border-color .22s;
}
.hmc-accordion-trigger:hover { color: var(--hmc-text); border-color: var(--hmc-border-warm); }
.hmc-accordion.is-open .hmc-accordion-trigger { color: var(--hmc-text); border-color: var(--hmc-gold); background: var(--hmc-bg-item-h); }

.hmc-acc-arrow {
	width: 16px; height: 16px; flex-shrink: 0;
	transition: transform .28s ease;
	color: var(--hmc-text-muted);
}
.hmc-accordion.is-open .hmc-acc-arrow { transform: rotate(180deg); color: var(--hmc-gold); }

.hmc-accordion-body {
	overflow: hidden;
	max-height: 0;
	transition: max-height .38s ease;
}
.hmc-accordion.is-open .hmc-accordion-body { max-height: 2400px; }
.hmc-accordion-inner { overflow: hidden; }

/* ============================================================================
   FORM
   ============================================================================ */
.hmc-form-section { background:var(--hmc-bg); padding:36px 28px 52px; }
.hmc-form { max-width:560px; margin:0 auto; display:flex; flex-direction:column; gap:20px; }

/* Style picker */
.hmc-style-picker {
	display:flex; overflow-x:auto; gap:7px; padding-bottom:5px;
	scrollbar-width:thin; scrollbar-color:var(--hmc-border) transparent;
	direction:rtl;
}
.hmc-style-picker::-webkit-scrollbar { height:3px; }
.hmc-style-option {
	flex:0 0 auto; display:flex; flex-direction:column; align-items:center;
	gap:4px; cursor:pointer; padding:9px 7px 7px;
	border:1px solid var(--hmc-border); border-radius:var(--hmc-radius);
	background:var(--hmc-bg-item); transition:border-color .2s,background .2s; min-width:62px;
}
.hmc-style-option input[type="radio"] { display:none; }
.hmc-style-option.is-selected { border-color:var(--hmc-gold); background:var(--hmc-bg-item-h); }
.hmc-style-option:hover { border-color:var(--hmc-border-warm); }
.hmc-style-candle-preview { width:20px; height:48px; overflow:visible; display:block; }
.hmc-style-name { font-size:10px; color:var(--hmc-text-muted); text-align:center; line-height:1.25; direction:rtl; }

/* Gender picker */
.hmc-gender-picker { display:flex; gap:8px; flex-wrap:wrap; direction:rtl; }
.hmc-gender-opt {
	display:flex; align-items:center; gap:7px; padding:8px 12px;
	background:var(--hmc-bg-item); border:1px solid var(--hmc-border);
	border-radius:var(--hmc-radius); cursor:pointer; transition:border-color .2s;
	flex:1; min-width:130px; direction:rtl;
}
.hmc-gender-opt input[type="radio"] { display:none; }
.hmc-gender-opt.is-selected { border-color:var(--hmc-gold); background:var(--hmc-bg-item-h); }
.hmc-gender-opt:hover { border-color:var(--hmc-border-warm); }
.hmc-gender-opt-dot {
	width:13px; height:13px; border-radius:50%;
	border:1.5px solid var(--hmc-text-muted); flex-shrink:0;
}
.hmc-gender-opt.is-selected .hmc-gender-opt-dot { border-color:var(--hmc-gold); background:var(--hmc-gold); }
.hmc-gender-opt-label { font-size:13px; color:var(--hmc-text-muted); }
.hmc-gender-opt.is-selected .hmc-gender-opt-label { color:var(--hmc-text); }

/* Fields */
.hmc-field { display:flex; flex-direction:column; gap:6px; }
.hmc-label {
	font-size:11px; letter-spacing:.06em;
	/* NO text-transform: uppercase — Hebrew doesn't use uppercase */
	color:var(--hmc-text-muted); direction:rtl;
}
.hmc-label-note { font-size:10px; color:var(--hmc-text-dim); font-style:italic; letter-spacing:0; margin-right:4px; }
.hmc-required { color:var(--hmc-gold); margin-left:3px; }

.hmc-input, .hmc-textarea {
	background:var(--hmc-bg-item); border:1px solid var(--hmc-border);
	color:var(--hmc-text); padding:10px 12px;
	font-family:var(--hmc-font); font-size:14px;
	border-radius:var(--hmc-radius); transition:border-color .2s; width:100%;
}
.hmc-input:focus, .hmc-textarea:focus { outline:none; border-color:var(--hmc-border-warm); }
.hmc-input::placeholder, .hmc-textarea::placeholder { color:var(--hmc-text-dim); font-style:italic; }
.hmc-textarea { resize:vertical; min-height:76px; }
.hmc-input--rtl { direction:rtl; }

/* Phrase chips */
.hmc-phrases {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0;
	direction: rtl;
	line-height: 1.9;
}
.hmc-phrase-sep {
	color: var(--hmc-text-dim);
	font-size: 11px;
	padding: 0 2px;
	user-select: none;
	pointer-events: none;
}
.hmc-phrase-chip {
	background: none !important;
	border: none !important;
	color: var(--hmc-text-muted) !important;
	padding: 3px 6px !important;
	font-size: 13px !important;
	font-family: var(--hmc-font) !important;
	cursor: pointer !important;
	direction: rtl;
	transition: color .2s;
	line-height: 1.5 !important;
	height: auto !important;
	min-height: 0 !important;
}
.hmc-phrase-chip:hover { color: var(--hmc-gold) !important; }
.hmc-phrase-chip.is-active { color: var(--hmc-gold) !important; font-style: italic; }

/* Upload */
.hmc-upload-label {
	display:flex; align-items:center; gap:13px; padding:12px 14px;
	background:var(--hmc-bg-item); border:1px dashed var(--hmc-border);
	border-radius:var(--hmc-radius); cursor:pointer; transition:border-color .2s;
	direction:rtl;
}
.hmc-upload-label:hover { border-color:var(--hmc-border-warm); }
.hmc-upload-label input[type="file"] { display:none; }
.hmc-upload-preview { width:44px; height:44px; border-radius:50%; object-fit:cover; border:1px solid var(--hmc-border); display:none; }
.hmc-upload-placeholder { font-size:13px; color:var(--hmc-text-muted); font-style:italic; }

/* toggle replaced by .hmc-anon-seg segmented button */

/* Errors */
.hmc-field-error { font-size:11px; color:#C05050; font-style:italic; display:none; direction:rtl; }
.hmc-field.has-error .hmc-field-error { display:block; }
.hmc-field.has-error .hmc-input, .hmc-field.has-error .hmc-textarea { border-color:#C05050; }

/* Form messages */
.hmc-form-message { padding:12px 15px; border-radius:var(--hmc-radius); font-size:13px; font-style:italic; display:none; direction:rtl; line-height:1.6; }
.hmc-form-message.is-visible { display:block; }
.hmc-form-message--error   { background:rgba(200,70,70,.1);  color:#D09090; border:1px solid rgba(200,70,70,.2); }
.hmc-form-message--success { background:rgba(70,160,90,.1);  color:#90C0A0; border:1px solid rgba(70,160,90,.2); }
.hmc-form-message--limit   { background:rgba(200,154,60,.1); color:#C8A050; border:1px solid rgba(200,154,60,.2); }

/* Submit */
.hmc-submit-btn {
	align-self:center; background:none;
	border:1px solid var(--hmc-border-warm);
	color:var(--hmc-text); padding:12px 48px;
	font-family:var(--hmc-font); font-size:14px;
	font-style:italic; letter-spacing:.03em;
	border-radius:var(--hmc-radius); cursor:pointer;
	transition:border-color .24s, color .24s, background .24s; direction:rtl;
}
.hmc-submit-btn:hover:not(:disabled) { border-color:var(--hmc-gold); color:var(--hmc-gold); background:rgba(200,154,60,.05); }
.hmc-submit-btn:disabled { opacity:.45; cursor:not-allowed; }
.hmc-login-notice { text-align:center; font-style:italic; color:var(--hmc-text-muted); padding:22px; direction:rtl; }

@media (max-width:480px) { .hmc-form-section { padding:28px 18px 44px; } }

/* ============================================================================
   POPOVER — dedication tooltip
   ============================================================================ */
.hmc-popover {
	position: fixed;
	z-index: 99998;
	background: rgba(14,16,24,.82);
	-webkit-backdrop-filter: blur(14px) saturate(1.4);
	backdrop-filter: blur(14px) saturate(1.4);
	border: 1px solid rgba(200,180,120,.28);
	border-radius: 10px;
	padding: 16px 18px 14px;
	max-width: 260px;
	min-width: 160px;
	box-shadow: 0 8px 32px rgba(0,0,0,.55);
	direction: rtl;
	font-family: "Open Sans", Arial, sans-serif;
	opacity: 0;
	transform: translateY(-6px);
	transition: opacity .22s ease, transform .22s ease;
	pointer-events: none;
}
.hmc-popover.is-visible {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}
/* Downward arrow caret */
.hmc-popover::after {
	content: '';
	position: absolute;
	bottom: -6px;
	left: 50%;
	transform: translateX(-50%) rotate(45deg);
	width: 10px; height: 10px;
	background: var(--hmc-bg-item-h);
	border-right: 1px solid var(--hmc-border-warm);
	border-bottom: 1px solid var(--hmc-border-warm);
}
.hmc-popover.is-below::after {
	bottom: auto;
	top: -6px;
	transform: translateX(-50%) rotate(-135deg);
}
.hmc-popover-close {
	position: absolute !important; top: 8px !important; left: 10px !important;
	background: none !important; border: none !important;
	color: rgba(200,200,200,.4) !important; cursor: pointer;
	font-size: 15px; line-height: 1; padding: 3px 7px !important;
	transition: color .2s;
}
.hmc-popover-close:hover { color: #C0B8A8 !important; }
.hmc-popover-phrase {
	font-size: 13px; color: #D8B060;
	font-style: italic; line-height: 1.7;
	margin-bottom: 8px; padding-bottom: 8px;
	border-bottom: 1px solid rgba(200,180,120,.2);
}
.hmc-popover-text {
	font-size: 13px; color: #D8D0C0;
	line-height: 1.85; font-style: italic;
}

/* ── Anonymous segmented button ─────────────────────────────────────────────── */
.hmc-anon-seg {
	display: inline-flex;
	background: rgba(255,255,255,.04);
	border: 1px solid rgba(200,180,120,.16);
	border-radius: 6px;
	overflow: hidden;
	direction: rtl;
	align-self: flex-start;
	gap: 0;
}
.hmc-anon-btn {
	flex: 0 0 auto;
	padding: 6px 14px !important;
	background: transparent !important;
	border: none !important;
	border-left: 1px solid rgba(200,180,120,.12) !important;
	color: var(--hmc-text-muted) !important;
	cursor: pointer !important;
	font-family: "Open Sans", Arial, sans-serif !important;
	font-size: 12px !important;
	direction: rtl;
	transition: background .15s, color .15s;
	text-align: center;
	line-height: 1.4 !important;
	height: auto !important;
	min-height: 0 !important;
	white-space: nowrap;
}
.hmc-anon-btn:first-child { border-left: none !important; }
.hmc-anon-btn.is-active {
	background: rgba(200,154,60,.22) !important;
	color: #D4A850 !important;
	font-weight: 600 !important;
}
.hmc-anon-btn:hover:not(.is-active) {
	background: rgba(255,255,255,.06) !important;
	color: var(--hmc-text) !important;
}

/* ============================================================================
   MODAL
   ============================================================================ */
.hmc-modal-overlay {
	position:fixed; inset:0; background:var(--hmc-modal-bg); z-index:99999;
	display:flex; align-items:center; justify-content:center; padding:22px;
	opacity:0; pointer-events:none; transition:opacity .28s;
}
.hmc-modal-overlay.is-open { opacity:1; pointer-events:auto; }
.hmc-modal {
	background:var(--hmc-bg-item); border:1px solid var(--hmc-border-warm);
	border-radius:var(--hmc-radius-lg); padding:40px 36px;
	max-width:500px; width:100%; position:relative;
	transform:translateY(14px);
	transition:transform .36s cubic-bezier(.16,1,.3,1);
	max-height:90vh; overflow-y:auto;
	scrollbar-width:thin; scrollbar-color:var(--hmc-border) transparent;
	direction:rtl;
}
.hmc-modal-overlay.is-open .hmc-modal { transform:translateY(0); }
.hmc-modal-close {
	position:absolute; top:13px; left:14px;
	background:none; border:none; color:var(--hmc-text-muted);
	cursor:pointer; font-size:20px; line-height:1; padding:5px 9px;
	transition:color .2s;
}
.hmc-modal-close:hover { color:var(--hmc-text); }
.hmc-modal-portrait { width:80px; height:80px; border-radius:50%; overflow:hidden; border:2px solid var(--hmc-border-warm); margin:0 auto 20px; display:none; }
.hmc-modal-portrait img { width:100%; height:100%; object-fit:cover; }
.hmc-modal-style-name { text-align:center; font-size:9px; letter-spacing:.15em; color:var(--hmc-text-dim); margin-bottom:20px; }
.hmc-modal-label { text-align:center; font-size:18px; font-weight:300; line-height:1.5; margin-bottom:0; color:var(--hmc-text); }
.hmc-modal-label strong { font-weight:700; }
.hmc-modal-divider { height:1px; background:var(--hmc-border); margin:18px 0; }
.hmc-modal-phrase { text-align:center; font-size:14px; color:var(--hmc-gold); font-style:italic; margin-bottom:9px; line-height:1.7; display:none; }
.hmc-modal-dedication { font-size:13px; color:var(--hmc-text-muted); line-height:1.85; text-align:center; font-style:italic; display:none; }
.hmc-modal-meta { display:flex; flex-direction:column; gap:6px; margin-top:18px; }
.hmc-modal-meta-row { display:flex; justify-content:space-between; font-size:11px; color:var(--hmc-text-dim); direction:rtl; }
.hmc-modal-meta-row strong { color:var(--hmc-text-muted); font-weight:600; }
@media (max-width:480px) { .hmc-modal { padding:32px 18px; } }
