/* Manar CV – Frontend (Echelon: Onest · Ink · Paper · Orange). Farben per Elementor-Widget überschreibbar. */
.mcv, .mcv-full, .mcv-switch, .mcv-btnwrap, .mcv-toolbar {
	--mcv-accent: #FF5D00; --mcv-accent-h: #E64F00; --mcv-text: #FFFAFA; --mcv-muted: rgba(255,250,250,.72);
	--mcv-faint: rgba(255,250,250,.56); --mcv-surface: #161616; --mcv-line: rgba(255,250,250,.10); --mcv-radius: 24px;
	font-family: Onest, system-ui, -apple-system, sans-serif; color: var(--mcv-text);
}
.mcv *, .mcv-full * { box-sizing: border-box; }
.mcv a { color: inherit; text-decoration: none; }
.mcv a:hover { color: var(--mcv-accent); }
.mcv p, .mcv h1, .mcv h2, .mcv h3, .mcv dl, .mcv dd { margin: 0; }

/* Sprachumschaltung */
.mcv-en { display: none !important; }
html.mcv-lang-en .mcv-de { display: none !important; }
html.mcv-lang-en .mcv-en { display: revert !important; }
html.mcv-lang-en .mcv-chips.mcv-en { display: contents !important; }
.mcv-chips.mcv-de { display: contents; }

/* Kopf */
.mcv-header { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: 48px; align-items: center; }
.mcv-header__text { display: grid; gap: 20px; justify-items: start; }
.mcv-name { font-size: clamp(36px, 5.4vw, 61px); font-weight: 800; line-height: .98; letter-spacing: -.03em; }
.mcv-accent { color: var(--mcv-accent); }
.mcv-role { font-size: 20px; font-weight: 600; line-height: 1.4; }
.mcv-summary { max-width: 62ch; font-size: 17px; line-height: 1.65; color: var(--mcv-muted); }
.mcv-header__side { display: grid; gap: 16px; }
.mcv-photo { aspect-ratio: 4 / 5; max-height: 480px; border: 1px solid var(--mcv-line); border-radius: var(--mcv-radius); overflow: hidden; background: var(--mcv-surface); }
.mcv-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mcv-facts > div { display: flex; flex-wrap: wrap; gap: 4px 16px; padding: 12px 0; border-top: 1px solid var(--mcv-line); }
.mcv-facts dt { width: 104px; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--mcv-faint); padding-top: 2px; }
.mcv-facts dd { font-size: 15px; line-height: 1.5; }

/* Tags, Links */
.mcv-tags, .mcv-links, .mcv-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.mcv-tag { padding: 6px 14px; border: 1px solid var(--mcv-line); border-radius: 999px; font-size: 13px; font-weight: 600; color: var(--mcv-muted); }
.mcv-tag--sm { padding: 3px 10px; font-size: 12px; }
.mcv-links a { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 1px solid var(--mcv-line); border-radius: 999px; font-size: 13px; font-weight: 600; transition: border-color .16s ease, color .16s ease; }
.mcv-links a:hover { border-color: var(--mcv-accent); }
.mcv-ico { flex: none; }

/* Abschnitte */
.mcv-section { display: grid; gap: 24px; }
.mcv-h2 { font-size: clamp(26px, 3.2vw, 39px); font-weight: 800; line-height: 1.05; letter-spacing: -.02em; text-transform: uppercase; }
.mcv-entries { border-bottom: 1px solid var(--mcv-line); }
.mcv-entry { display: flex; flex-wrap: wrap; gap: 8px 32px; padding: 24px 0; border-top: 1px solid var(--mcv-line); }
.mcv-entries--compact .mcv-entry { padding: 14px 0; }
.mcv-entry__when { width: 180px; flex: none; font-size: 14px; font-weight: 600; line-height: 1.6; color: var(--mcv-faint); }
.mcv-entry__body { flex: 1; min-width: 240px; display: grid; gap: 6px; }
.mcv-entry__head { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.mcv-entry h3 { font-size: 18px; font-weight: 700; line-height: 1.35; }
.mcv-type { font-weight: 500; color: var(--mcv-muted); }
.mcv-entry__org { font-size: 15px; line-height: 1.55; color: var(--mcv-muted); }
.mcv-entry__details { font-size: 14px; line-height: 1.55; color: var(--mcv-faint); }

.mcv-skills { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 16px; }
.mcv-card { background: var(--mcv-surface); border: 1px solid var(--mcv-line); border-radius: var(--mcv-radius); padding: 24px; display: grid; gap: 14px; align-content: start; }
.mcv-card__t { font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mcv-accent); }
.mcv-chip { padding: 6px 14px; border: 1px solid var(--mcv-line); border-radius: 999px; font-size: 14px; font-weight: 600; }

.mcv-rows { border-bottom: 1px solid var(--mcv-line); }
.mcv-rows > div { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; padding: 16px 0; border-top: 1px solid var(--mcv-line); }
.mcv-rows strong { flex: 1; min-width: 160px; font-size: 16px; }
.mcv-rows span { font-size: 14px; color: var(--mcv-muted); }
.mcv-dots { display: inline-flex; gap: 4px; }
.mcv-dots i { width: 10px; height: 10px; border-radius: 50%; background: var(--mcv-line); }
.mcv-dots i.on { background: var(--mcv-accent); }

/* Buttons, Umschalter */
.mcv-btnwrap, .mcv-toolbar { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.mcv-btn { display: inline-flex; align-items: center; gap: 10px; padding: 14px 26px; border-radius: 999px; background: var(--mcv-accent, #FF5D00); color: #0D0101; font: 700 14px/1 Onest, system-ui, sans-serif; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; transition: background-color .16s ease, transform .16s ease; }
.mcv-btn:hover { background: var(--mcv-accent-h, #E64F00); color: #0D0101; }
.mcv-btn:active { transform: scale(.97); }
.mcv-switch { display: inline-flex; gap: 4px; }
.mcv-switch button { padding: 8px 14px; min-height: 36px; border: 1px solid var(--mcv-line); border-radius: 999px; background: transparent; color: var(--mcv-muted); font: 700 12px/1 Onest, system-ui, sans-serif; letter-spacing: .08em; cursor: pointer; }
.mcv-switch button[aria-pressed="true"] { border-color: var(--mcv-accent); background: rgba(255,93,0,.14); color: var(--mcv-accent); }
.mcv-btn:focus-visible, .mcv-switch button:focus-visible, .mcv a:focus-visible { outline: 2px solid var(--mcv-accent); outline-offset: 3px; }

/* Komplett-Ansicht */
.mcv-full { display: grid; gap: 72px; }
.mcv-toolbar { justify-content: flex-end; }
.mcv-updated { font-size: 13px; color: var(--mcv-faint); }

@media (max-width: 760px) {
	.mcv-full { gap: 48px; }
	.mcv-entry__when { width: 100%; }
	.mcv-btn { min-height: 48px; }
}
@media print {
	.mcv-switch, .mcv-btnwrap, .mcv-toolbar { display: none !important; }
}
