/* Design: Amateure 11 – Video-Feed im Rosé-Flieder-Look: Pflaumen-Schwarz, Rosa und Flieder, Pinselschrift (Pacifico), weiche Formen */
:root {
	--ct-bg: #120b16;
	--ct-surface: #1c1222;
	--ct-surface-2: #29192f;
	--ct-text: #f8eef7;
	--ct-muted: #b9a5bd;
	--ct-line: rgba(255, 170, 220, .15);
	--ct-accent: #ff6fb7;
	--ct-accent-2: #a77bff;
	--ct-accent-text: #ffffff;
	--ct-live: #ff4f8d;
	--ct-live-text: #ffffff;
	--ct-header-bg: rgba(18, 11, 22, .85);
	--ct-star: #ffc2e2;
	--ct-pink: #ffc2e2;
	--ct-lilac: #a77bff;

	--ct-font-body: "Inter", system-ui, sans-serif;
	--ct-font-head: "Manrope", "Inter", system-ui, sans-serif;
	--ct-head-weight: 800;
	--ct-head-tracking: -0.02em;
	--ct-head-transform: none;

	--ct-radius: 22px;
	--ct-radius-img: 16px;
	--ct-radius-btn: 999px;
	--ct-card-ratio: 3 / 4;
	--ct-gap: 18px 14px;
	--ct-logo-h: 70px;
}

/* Hintergrund: rosa und fliederfarbener Schimmer, wie das Glühen im Logo. */
body {
	background:
		radial-gradient(700px 360px at 15% -80px, rgba(255, 111, 183, .22), transparent 70%),
		radial-gradient(700px 360px at 90% 0, rgba(167, 123, 255, .2), transparent 70%),
		var(--ct-bg);
}
.ct-header { backdrop-filter: blur(10px); border-bottom: 1px solid var(--ct-line); }
.ct-brand__logo { filter: drop-shadow(0 0 12px rgba(255, 111, 183, .45)); }
.ct-brand__name { font-family: "Pacifico", cursive; font-weight: 400; font-size: 2rem; color: #fff; text-shadow: 0 0 10px rgba(255, 111, 183, .8), 0 0 26px rgba(167, 123, 255, .5); }

/* Überschriften: Pinselschrift für Seiten- und Abschnittstitel. */
.ct-page-title, .ct-front h1 { font-family: "Pacifico", cursive; font-weight: 400; letter-spacing: 0; font-size: clamp(2rem, 1.3rem + 2.4vw, 3.2rem); line-height: 1.25; color: #fff; text-shadow: 0 0 14px rgba(255, 111, 183, .55); }
.ct-section-title { font-family: "Pacifico", cursive; font-weight: 400; letter-spacing: 0; font-size: 1.75rem; color: #fff; }
.ct-section-title::after { content: ""; display: block; width: 70px; height: 3px; margin-top: 4px; border-radius: 3px; background: linear-gradient(90deg, var(--ct-accent), var(--ct-lilac)); }
.ct-prose h3, .ct-front h3 { color: var(--ct-pink); }
.ct-prose a, .ct-front p:not(.ct-card__name) a:not(.ct-btn), .ct-front li a:not(.ct-video__link) { color: var(--ct-pink); }

/* Stories. */
.ct-stories__ring { background: linear-gradient(135deg, var(--ct-accent), var(--ct-lilac)); box-shadow: 0 0 16px rgba(255, 111, 183, .35); }
.ct-front .ct-stories a { color: var(--ct-text); }

/* Zufallsclip. */
.ct-shuffle { background: linear-gradient(135deg, rgba(255, 111, 183, .12), rgba(167, 123, 255, .1) 60%, rgba(28, 18, 34, .95)); border-color: rgba(255, 170, 220, .25); }
.ct-shuffle__media { box-shadow: 0 20px 60px -24px rgba(255, 111, 183, .7); }
.ct-shuffle__kicker { color: var(--ct-pink); }
.ct-front .ct-shuffle__title a { color: #fff; }
.ct-shuffle__next { border-color: rgba(167, 123, 255, .5); color: #fff; }
.ct-shuffle__next:hover { background: var(--ct-lilac); border-color: var(--ct-lilac); }

/* Tagebuch und Clip-Kacheln. */
.ct-diary__label { border-left-color: var(--ct-lilac); font-family: "Pacifico", cursive; font-weight: 400; font-size: 1.3rem; color: #fff; }
.ct-front .ct-portal li a:not(.ct-video__link) { color: var(--ct-text); }
.ct-front .ct-portal .ct-pclip__meta a:not(.ct-video__link) { color: var(--ct-muted); }
.ct-pclip .ct-video__media { border-radius: var(--ct-radius-img); }
.ct-pclip:hover .ct-video__media { box-shadow: 0 0 0 2px var(--ct-accent), 0 14px 34px -14px rgba(255, 111, 183, .8); }
.ct-video__play { background: linear-gradient(135deg, var(--ct-lilac), var(--ct-accent)); box-shadow: 0 0 20px rgba(167, 123, 255, .6); }
.ct-video__time { background: rgba(18, 11, 22, .8); border-radius: 999px; padding-inline: 8px; }
.ct-video__badge--live { background: var(--ct-live); }
.ct-video__badge--new { background: var(--ct-lilac); color: #fff; }

/* Stimmungen: abwechselnd rosa und flieder. */
.ct-front .ct-moods a { color: var(--ct-text); }
.ct-moods span { font-family: "Pacifico", cursive; font-weight: 400; }
.ct-moods__i0 a { background: rgba(255, 111, 183, .12); border-color: rgba(255, 111, 183, .35); }
.ct-moods__i1 a { background: rgba(167, 123, 255, .14); border-color: rgba(167, 123, 255, .4); }
.ct-moods__i2 a { background: rgba(255, 194, 226, .08); }

/* Cams klein im Hintergrund. */
.ct-card__media { border-radius: var(--ct-radius-img); }
.ct-card:hover .ct-card__media { box-shadow: 0 0 0 2px var(--ct-accent); }
.ct-live--on { background: var(--ct-live); color: #fff; }

/* Buttons. */
.ct-btn { font-weight: 800; }
.ct-btn--primary { background: linear-gradient(90deg, var(--ct-accent), var(--ct-lilac)); color: #fff; box-shadow: 0 10px 30px -10px rgba(255, 111, 183, .8); }
.ct-btn--primary:hover { filter: brightness(1.08); }
.ct-btn--ghost { border-color: rgba(255, 170, 220, .4); color: #fff; }
.ct-btn--ghost:hover { border-color: var(--ct-accent); }
.ct-pagination .current { background: var(--ct-accent); color: #fff; }
.ct-vpage__quote { border-left-color: var(--ct-accent); }
.ct-figure img { border-radius: var(--ct-radius-img); box-shadow: 0 0 0 1px var(--ct-line); }
