/**
 * Wunschfabrik – Externe Frontend-Oberfläche
 *
 * Zweite Renderwelt (§17 CLAUDE_PROJEKTAUFTRAG.md): theme-unabhängig.
 * Basisfarbe: Violett-Brand (#7c3aed) + Amber-Akzent (#f59e0b) für Wunschfabrik-Identität.
 *
 * Phase 88: Wunschfabrik Grundstruktur.
 */

/* ── Reset & Base ─────────────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }

body {
    margin: 0;
    padding: 0;
    font-family: var(--font-family-body, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif);
    font-size: 15px;
    color: var(--text, #1f2937);
    background: var(--bg, #f9fafb);
    line-height: var(--line-height-base, 1.6);
}

a { color: var(--accent, #7c3aed); text-decoration: none; }
a:hover { text-decoration: underline; }

/* ── Layout ───────────────────────────────────────────────────────────────── */
.scl-wf { /* body-Klasse: keine Breitenbeschränkung — Portal-Bar bleibt viewportbreit */ }
.wf-wrap {
    max-width: var(--scl-width-standard, 1080px);
    margin: 0 auto;
    padding: 0 var(--scl-page-pad-x, 20px) var(--scl-page-pad-y, 80px);
}

/* ── Seitenheader ─────────────────────────────────────────────────────────── */
.wf-page-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 24px;
    flex-wrap: wrap;
}

.wf-page-header-right {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.wf-page-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #111827;
    margin: 0;
}

.wf-back-link {
    font-size: 0.82rem;
    font-weight: 600;
    color: #7c3aed;
}

/* ── Buttons ──────────────────────────────────────────────────────────────── */
.wf-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 9px 18px;
    border-radius: 8px;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    border: none;
    text-decoration: none;
    transition: background .14s, color .14s, border-color .14s, box-shadow .14s;
    white-space: nowrap;
    line-height: 1.4;
}

/* M24.6: Primary-Button öffnet Wunschfabrik für Preset-Akzent.
   Light-Theme bleibt unangetastet (Hardcode als Fallback), aber wenn ein
   aktives Preset --accent setzt, übernimmt es jetzt sichtbar — Wunschfabrik
   konnte zuvor nie auf Preset-Brand mitziehen. Shadow bleibt tonsicher. */
.wf-btn-primary {
    background: var(--accent, #7c3aed);
    color: #fff;
    box-shadow: 0 2px 8px rgba(124,58,237,.25);
}
.wf-btn-primary:hover { background: var(--accent-hover, #6d28d9); color: #fff; text-decoration: none; box-shadow: 0 3px 12px rgba(124,58,237,.35); }

.wf-btn-secondary {
    background: #f5f3ff;
    color: #5b21b6;
    border: 1px solid #ddd6fe;
}
.wf-btn-secondary:hover { background: #ede9fe; border-color: #a78bfa; color: #4c1d95; text-decoration: none; }

.wf-btn-ghost {
    background: transparent;
    color: #6b7280;
    border: 1px solid #e5e7eb;
}
.wf-btn-ghost:hover { background: #f3f4f6; color: #374151; text-decoration: none; }

.wf-btn-danger {
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}
.wf-btn-danger:hover { background: #fee2e2; border-color: #f87171; text-decoration: none; }

.wf-btn-sm {
    padding: 6px 12px;
    font-size: 0.78rem;
}

/* ── Karten ───────────────────────────────────────────────────────────────── */
.wf-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 20px;
}

.wf-card-archived {
    background: #f9fafb;
    border-color: #e5e7eb;
    opacity: .75;
}

/* ── Nachrichten / Hinweise ───────────────────────────────────────────────── */
.wf-notice {
    padding: 10px 16px;
    border-radius: 8px;
    font-size: 0.85rem;
    font-weight: 500;
    margin-bottom: 16px;
}
.wf-notice-success {
    background: #f0fdf4;
    color: #166534;
    border: 1px solid #bbf7d0;
}
.wf-notice-error {
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}

/* ── Leerer Zustand ───────────────────────────────────────────────────────── */
.wf-empty {
    text-align: center;
    padding: 60px 24px;
}
.wf-empty-icon {
    font-size: 3rem;
    display: block;
    margin-bottom: 16px;
    color: #f59e0b;
    line-height: 1;
}
.wf-empty-title {
    font-size: 1.2rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0 0 8px;
}
.wf-empty-text {
    font-size: 0.9rem;
    color: #6b7280;
    max-width: 380px;
    margin: 0 auto 24px;
    line-height: 1.6;
}

/* ── Badges ───────────────────────────────────────────────────────────────── */
.wf-badge {
    display: inline-block;
    font-size: 0.68rem;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 4px;
    white-space: nowrap;
    letter-spacing: .02em;
}

.wf-badge-category { background: #f0f9ff; color: #0369a1; border: 1px solid #bae6fd; }
.wf-badge-output   { background: #fefce8; color: #854d0e; border: 1px solid #fde68a; }

.wf-badge-status--draft       { background: #f3f4f6; color: #374151; border: 1px solid #e5e7eb; }
.wf-badge-status--active      { background: #f0fdf4; color: #166534; border: 1px solid #bbf7d0; }
.wf-badge-status--completed   { background: #f5f3ff; color: #5b21b6; border: 1px solid #ddd6fe; }
.wf-badge-status--archived    { background: #fff7ed; color: #9a3412; border: 1px solid #fed7aa; }
/* Phase 91: Workflow-Statuses (Admin-seitig gesetzt) */
.wf-badge-status--in_progress { background: #fffbeb; color: #92400e; border: 1px solid #fcd34d; }
.wf-badge-status--published   { background: #ecfdf5; color: #065f46; border: 1px solid #6ee7b7; font-weight: 700; }
.wf-badge-status--rejected    { background: #fef2f2; color: #991b1b; border: 1px solid #fca5a5; }

/* ── Wunsch-Liste ─────────────────────────────────────────────────────────── */
.wf-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.wf-list-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 16px 18px;
    transition: border-color .12s, box-shadow .12s;
}
.wf-list-item:hover { border-color: #c4b5fd; box-shadow: 0 2px 8px rgba(124,58,237,.08); }
.wf-list-item.is-archived { opacity: .6; }

.wf-list-item-main { flex: 1 1 0; min-width: 0; }

.wf-list-item-top {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 8px;
}

.wf-list-item-title {
    font-size: 0.97rem;
    font-weight: 600;
    color: #111827;
    margin: 0 0 4px;
    line-height: 1.4;
}
.wf-list-item-title a { color: #1f2937; }
.wf-list-item-title a:hover { color: #7c3aed; text-decoration: none; }

.wf-list-item-desc {
    font-size: 0.83rem;
    color: #6b7280;
    margin: 0 0 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.wf-list-item-date {
    font-size: 0.75rem;
    color: #9ca3af;
    display: block;
}

/* Phase 91: Ergebnis-Indikator + Forum-Link in Liste */
.wf-list-item-result-badge {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 600;
    color: #065f46;
    background: #ecfdf5;
    border: 1px solid #6ee7b7;
    border-radius: 4px;
    padding: 1px 7px;
    margin-top: 5px;
}

.wf-list-item-forum-link {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 600;
    color: #7c3aed;
    border: 1px solid #c4b5fd;
    border-radius: 4px;
    padding: 1px 7px;
    margin-top: 5px;
    margin-left: 4px;
}
.wf-list-item-forum-link:hover { background: #f5f3ff; text-decoration: none; }

/* ── Formulare ────────────────────────────────────────────────────────────── */
.wf-field {
    margin-bottom: 18px;
}

.wf-field-row {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.wf-label {
    display: block;
    font-size: 0.82rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 5px;
}

.wf-hint {
    font-weight: 400;
    color: #9ca3af;
    font-size: 0.75rem;
    margin-left: 4px;
}

.wf-required {
    color: #ef4444;
    margin-left: 2px;
}

.wf-input,
.wf-textarea,
.wf-select {
    width: 100%;
    font-size: 0.9rem;
    font-family: inherit;
    color: #1f2937;
    background: #fff;
    border: 1px solid #d1d5db;
    border-radius: 7px;
    padding: 9px 12px;
    transition: border-color .12s, box-shadow .12s;
    appearance: none;
}
.wf-input:focus,
.wf-textarea:focus,
.wf-select:focus {
    outline: none;
    border-color: #7c3aed;
    box-shadow: 0 0 0 3px rgba(124,58,237,.12);
}

.wf-textarea { resize: vertical; }
.wf-textarea-sm { resize: none; }

.wf-form-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    padding-top: 4px;
}

/* ── Danger Zone ──────────────────────────────────────────────────────────── */
.wf-danger-zone {
    border: 1px solid #fecaca;
    border-radius: 10px;
    padding: 16px 20px;
    background: #fff;
    margin-bottom: 20px;
}
.wf-danger-zone-title {
    font-size: 0.85rem;
    font-weight: 700;
    color: #991b1b;
    margin: 0 0 4px;
}
.wf-danger-zone-text {
    font-size: 0.82rem;
    color: #6b7280;
    margin: 0 0 12px;
}

/* ── Archiviert-Ansicht ───────────────────────────────────────────────────── */
.wf-archived-title {
    font-size: 1rem;
    font-weight: 600;
    color: #374151;
    margin: 0 0 6px;
}
.wf-archived-info {
    font-size: 0.83rem;
    color: #9ca3af;
    margin: 0;
}

/* ── Meta-Info ────────────────────────────────────────────────────────────── */
.wf-meta-info {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    font-size: 0.76rem;
    color: #9ca3af;
    margin-top: 8px;
    padding-top: 8px;
}

/* ── Coming Soon ──────────────────────────────────────────────────────────── */
.wf-coming-soon {
    text-align: center;
    padding: 72px 24px;
}
.wf-coming-soon-icon {
    font-size: 3.5rem;
    display: block;
    margin-bottom: 20px;
    color: #f59e0b;
    line-height: 1;
}
.wf-coming-soon-title {
    font-size: 2rem;
    font-weight: 800;
    color: #111827;
    margin: 0 0 10px;
}
.wf-coming-soon-lead {
    font-size: 1.05rem;
    font-weight: 500;
    color: #5b21b6;
    margin: 0 0 16px;
}
.wf-coming-soon-text {
    font-size: 0.9rem;
    color: #6b7280;
    max-width: 420px;
    margin: 0 auto 28px;
    line-height: 1.7;
}

/* ── PATCH SCL-PDB-REMOVAL-001-FIX3: removed. ── */
.wf-bridge-box {
    background: #f5f3ff;
    border: 1px solid #ddd6fe;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 20px 0;
}
.wf-bridge-box-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    font-size: 0.9rem;
    color: #5b21b6;
}
.wf-bridge-box-icon {
    font-size: 0.85rem;
    color: #7c3aed;
}
.wf-bridge-box-count {
    font-size: 0.875rem;
    color: #374151;
    margin: 0 0 12px;
}
.wf-bridge-box-count a {
    color: #7c3aed;
}
.wf-btn-outline {
    background: transparent;
    border: 1.5px solid #7c3aed;
    color: #7c3aed;
}
.wf-btn-outline:hover {
    background: #7c3aed;
    color: #fff;
    text-decoration: none;
}
.wf-btn-sm {
    font-size: 0.8rem;
    padding: 6px 14px;
}

/* ── Phase 90: Musik-Felder + DSGVO-Hinweis ─────────────────────────────── */
.wf-label-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    cursor: pointer;
    font-weight: normal;
    color: #374151;
    font-size: 0.9rem;
}
.wf-label-checkbox input[type="checkbox"] {
    margin-top: 2px;
    flex-shrink: 0;
}

.wf-legal-notice {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 12px 16px;
    margin: 12px 0;
}
.wf-legal-notice p {
    font-size: 0.82rem;
    color: #6b7280;
    margin: 0;
    line-height: 1.6;
}

/* ── Phase 92: Community-Feed ───────────────────────────────────────────── */

/* Badge für Ergebnis-Indikator */
.wf-badge-result {
    background: #ecfdf5;
    color: #065f46;
    border: 1px solid #6ee7b7;
}

/* Lead-Text unter dem Header */
.wf-community-lead {
    font-size: 0.88rem;
    color: #6b7280;
    margin: -10px 0 20px;
}

/* Community-Grid: responsive Kachelraster */
.wf-community-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
    margin-bottom: 28px;
}

/* Einzelne Kachel */
.wf-community-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: border-color .12s, box-shadow .12s;
}
.wf-community-card:hover {
    border-color: #c4b5fd;
    box-shadow: 0 4px 14px rgba(124,58,237,.1);
}

.wf-community-card-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.wf-community-card-title {
    font-size: 1rem;
    font-weight: 700;
    color: #111827;
    margin: 0;
    line-height: 1.4;
}
.wf-community-card-title a {
    color: #111827;
    text-decoration: none;
}
.wf-community-card-title a:hover {
    color: #7c3aed;
}

.wf-community-card-desc {
    font-size: 0.84rem;
    color: #6b7280;
    margin: 0;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.wf-community-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.wf-community-card-meta-item {
    font-size: 0.78rem;
    color: #6b7280;
}
.wf-community-card-meta-label {
    font-weight: 600;
    color: #374151;
    margin-right: 3px;
}

.wf-community-card-footer {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    flex-wrap: wrap;
    border-top: 1px solid #f3f4f6;
    padding-top: 10px;
}

.wf-community-card-forum-link {
    font-size: 0.75rem;
    font-weight: 600;
    color: #7c3aed;
    border: 1px solid #c4b5fd;
    border-radius: 4px;
    padding: 2px 8px;
    text-decoration: none;
}
.wf-community-card-forum-link:hover {
    background: #f5f3ff;
    text-decoration: none;
}

.wf-community-card-footer-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 1px;
}

.wf-community-card-creator {
    font-size: 0.78rem;
    color: #374151;
    font-weight: 600;
}
.wf-community-card-creator a { color: #7c3aed; }

.wf-community-card-date {
    font-size: 0.72rem;
    color: #9ca3af;
}

/* Pagination */
.wf-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 24px;
    padding: 16px 0;
}
.wf-pagination-btn {
    display: inline-flex;
    align-items: center;
    padding: 7px 16px;
    border-radius: 7px;
    font-size: 0.84rem;
    font-weight: 600;
    background: #fff;
    border: 1.5px solid #e5e7eb;
    color: #374151;
    text-decoration: none;
    transition: border-color .12s, color .12s;
}
.wf-pagination-btn:hover {
    border-color: #7c3aed;
    color: #7c3aed;
    text-decoration: none;
}
.wf-pagination-info {
    font-size: 0.82rem;
    color: #9ca3af;
}

/* is_public Indikator in Privatliste */
.wf-list-item-public-badge {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 600;
    color: #5b21b6;
    background: #f5f3ff;
    border: 1px solid #c4b5fd;
    border-radius: 4px;
    padding: 1px 7px;
    margin-top: 5px;
    text-decoration: none;
}
.wf-list-item-public-badge:hover { background: #ede9fe; text-decoration: none; }

/* Community-Sichtbarkeit Checkbox-Hint */
.wf-field-hint {
    font-size: 0.78rem;
    color: #9ca3af;
    margin: 3px 0 0;
}
.wf-field-hint a { color: #7c3aed; }

/* Header-Aktionen-Gruppe (mehrere Buttons) */
.wf-page-header-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
}

/* ── Phase 92: Öffentliche View-Seite ───────────────────────────────────── */
.wf-view-title {
    font-size: 1.4rem;
    font-weight: 700;
    color: #111827;
    margin: 0 0 12px;
}

.wf-view-short-desc {
    font-size: 0.95rem;
    color: #6b7280;
    margin: 0 0 16px;
    line-height: 1.6;
    font-style: italic;
}

.wf-view-content {
    font-size: 0.92rem;
    color: #374151;
    line-height: 1.8;
    margin-bottom: 16px;
    white-space: pre-line;
}

.wf-view-music-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    background: #faf5ff;
    border: 1px solid #e9d5ff;
    border-radius: 8px;
    padding: 12px 16px;
    margin-bottom: 16px;
}
.wf-view-music-meta-item {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.wf-view-music-meta-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: #7c3aed;
    text-transform: uppercase;
    letter-spacing: .03em;
}
.wf-view-music-meta-value {
    font-size: 0.9rem;
    color: #1f2937;
}

.wf-view-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border-top: 1px solid #f3f4f6;
    margin-top: 16px;
    padding-top: 12px;
    flex-wrap: wrap;
}
.wf-view-creator {
    font-size: 0.82rem;
    color: #374151;
}
.wf-view-creator a { color: #7c3aed; }
.wf-view-date {
    font-size: 0.78rem;
    color: #9ca3af;
}

.wf-view-owner-actions {
    margin-top: 16px;
    display: flex;
    justify-content: flex-end;
}

/* ── Phase 91: Ergebnis-Block + Forum-Anbindung ──────────────────────────── */
.wf-result-block {
    background: linear-gradient(135deg, #ecfdf5 0%, #f0fdf4 100%);
    border: 1.5px solid #6ee7b7;
    border-radius: 10px;
    padding: 18px 20px;
    margin: 20px 0;
}

.wf-result-block-title {
    font-size: 1rem;
    font-weight: 700;
    color: #065f46;
    margin: 0 0 8px;
}

.wf-result-block-date {
    font-size: 0.82rem;
    color: #047857;
    margin: 0 0 12px;
}

.wf-result-block-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.wf-result-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 7px 14px;
    border-radius: 7px;
    font-size: 0.83rem;
    font-weight: 600;
    border: 1.5px solid #6ee7b7;
    color: #065f46;
    background: #fff;
    text-decoration: none;
    transition: background .12s, border-color .12s;
}
.wf-result-link:hover { background: #d1fae5; border-color: #34d399; text-decoration: none; }
.wf-result-link--youtube { border-color: #fca5a5; color: #991b1b; }
.wf-result-link--youtube:hover { background: #fee2e2; border-color: #f87171; }
.wf-result-link--tiktok { border-color: #c4b5fd; color: #5b21b6; }
.wf-result-link--tiktok:hover { background: #f5f3ff; border-color: #a78bfa; }

.wf-forum-link-box {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: #faf5ff;
    border: 1px solid #c4b5fd;
    border-radius: 8px;
    padding: 12px 16px;
    margin: 16px 0;
}

.wf-forum-link-icon {
    font-size: 1.1rem;
    color: #7c3aed;
    line-height: 1.5;
    flex-shrink: 0;
}

.wf-forum-link-box strong {
    display: block;
    font-size: 0.85rem;
    color: #4c1d95;
    margin-bottom: 4px;
}

.wf-forum-link {
    font-size: 0.83rem;
    font-weight: 600;
    color: #7c3aed;
}
.wf-forum-link:hover { text-decoration: underline; }

/* ── Phase 94: View-Blocks ────────────────────────────────────────────────── */

.wf-view-block {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 20px 22px;
    margin-bottom: 14px;
}

.wf-view-block--result {
    background: linear-gradient(135deg, #ecfdf5 0%, #f0fdf4 100%);
    border-color: #6ee7b7;
}

.wf-view-block--forum {
    background: #faf5ff;
    border-color: #c4b5fd;
}

.wf-view-block-title {
    font-size: 0.95rem;
    font-weight: 700;
    color: #374151;
    margin: 0 0 10px;
}

.wf-view-block--result .wf-view-block-title {
    color: #065f46;
}

.wf-view-block--forum .wf-view-block-title {
    color: #4c1d95;
}

.wf-view-block-meta {
    font-size: 0.82rem;
    color: #047857;
    margin: 0 0 12px;
}

/* ── Phase 94: Social-Media-Anzeige (view.php) ────────────────────────────── */

.wf-view-social {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.82rem;
}

.wf-view-social-platform {
    font-weight: 600;
    color: #374151;
}

.wf-view-social-handle {
    color: #6b7280;
}

.wf-view-social a.wf-view-social-handle {
    color: #7c3aed;
    text-decoration: none;
}

.wf-view-social a.wf-view-social-handle:hover {
    text-decoration: underline;
}

/* ── Phase 94: Field-Group (edit.php Social-Media-Sektion) ───────────────── */

.wf-field-group {
    margin-bottom: 1.25rem;
    padding: 14px 16px;
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
}

.wf-field-group-label {
    font-size: 0.78rem;
    font-weight: 700;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin: 0 0 10px;
}

/* ── Phase 95: Forum-Vorschau in Wunsch-Detailansicht ───────────────────── */

.wf-forum-thread-meta {
    font-size: 0.82rem;
    color: #6b7280;
    margin: 0 0 0.75rem;
}

.wf-forum-preview {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    margin: 0 0 1rem;
}

.wf-forum-preview__item {
    background: rgba(124, 58, 237, 0.04);
    border-left: 2px solid #c4b5fd;
    padding: 0.45rem 0.75rem;
    border-radius: 0 4px 4px 0;
}

.wf-forum-preview__author {
    font-size: 0.78rem;
    font-weight: 700;
    color: #5b21b6;
    display: block;
    margin-bottom: 0.15rem;
}

.wf-forum-preview__body {
    font-size: 0.84rem;
    color: #374151;
    margin: 0;
    line-height: 1.5;
}

/* ── Korrekturblock: "Details →"-Link in Community-Karte ─────────────────── */
.wf-community-card-details-link {
    font-size: 0.82rem;
    font-weight: 600;
    color: #7c3aed;
    text-decoration: none;
}
.wf-community-card-details-link:hover { text-decoration: underline; }

/* ── Korrekturblock: "Meine Entwürfe"-Block ──────────────────────────────── */
.wf-my-wishes {
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid rgba(124, 58, 237, 0.15);
}
.wf-my-wishes__title {
    font-size: 0.9rem;
    font-weight: 700;
    color: #5b21b6;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0 0 0.75rem;
}

/* ── Block 4: Prompt-Bezüge (Phase 98) ───────────────────────────────────── */
.wf-view-block--prompts {
    border-top: 2px solid #7c3aed;
}

.wf-prompts-intro {
    font-size: 0.875rem;
    color: #6b7280;
    margin: 0 0 12px;
}

.wf-prompt-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.wf-prompt-list__item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: #faf5ff;
    border: 1px solid #e9d5ff;
    border-radius: 8px;
    font-size: 0.875rem;
}

.wf-prompt-list__icon {
    flex-shrink: 0;
    font-size: 0.9rem;
    color: #7c3aed;
}

.wf-prompt-list__title {
    flex: 1;
    min-width: 0;
    color: #5b21b6;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wf-prompt-list__title:hover {
    text-decoration: underline;
}

.wf-prompt-list__tool {
    flex-shrink: 0;
    font-size: 0.75rem;
    color: #9ca3af;
    background: #f3f4f6;
    border-radius: 4px;
    padding: 2px 7px;
}

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width: 600px) {
    .wf-wrap { padding: 20px 14px 80px; }
    .wf-page-header { flex-direction: column; align-items: flex-start; }
    .wf-card { padding: 16px; }
    .wf-field-row { grid-template-columns: 1fr; }
    .wf-list-item { flex-direction: column; }
    .wf-coming-soon { padding: 48px 16px; }
}
