/* ============================================================================
   DCA Suite 2.0 – Unified Frontend Override
   Bringt alle Module auf das gleiche visuelle Niveau wie das Notenarchiv.
   Wird NACH den Modul-CSS-Dateien geladen und überschreibt Unterschiede.
   ============================================================================ */

/* ── Alle Modul-Farben auf die Vereinsfarbe vereinheitlichen ─────────────── */
:root {
    /* Probenplan → Vereinsfarbe */
    --pr-primary:    var(--dca, #e67e22);
    --pr-primary-d:  color-mix(in srgb, var(--dca,#e67e22) 80%, black);
    --pr-primary-l:  color-mix(in srgb, var(--dca,#e67e22) 12%, transparent);
    --pr-bg:         #f6f7f9;
    --pr-card:       #ffffff;
    --pr-border:     #e5e7eb;
    --pr-radius:     12px;
    --pr-font:       -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;

    /* Downloads → weg von Blau, zur Vereinsfarbe */
    --da-primary:    var(--dca, #e67e22);
    --da-bg-body:    #f6f7f9;
    --da-bg-card:    #ffffff;
    --da-border:     #e5e7eb;
    --da-radius:     12px;

    /* News */
    --wnm-primary:      var(--dca, #e67e22);
    --wnm-primary-dark: color-mix(in srgb, var(--dca,#e67e22) 80%, black);
    --wnm-border:       #e5e7eb;
    --wnm-bg:           #f6f7f9;
    --wnm-bg-card:      #ffffff;
    --wnm-radius:       12px;

    /* Notenarchiv */
    --na-primary:    var(--dca, #e67e22);
    --na-bg-body:    #f6f7f9;
    --na-bg-card:    #ffffff;
    --na-border:     #e5e7eb;
    --na-radius:     12px;
}

/* ── Gemeinsame Wrapper-Normalisierung ───────────────────────────────────── */
.na-wrapper, .na-single-wrapper,
.pr-wrapper,
.da-wrapper,
.wnm-feed-wrap, .wnm-widget-wrap, .wnm-my-news-wrap {
    max-width: 1000px !important;
    margin: 32px auto !important;
    padding: 0 20px !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif !important;
    color: #111827 !important;
}

/* ── Card-Stil vereinheitlichen ──────────────────────────────────────────── */
/* Probenplan Karten */
.pr-card, .pr-event-card {
    border-radius: 12px !important;
    border: 1.5px solid #e5e7eb !important;
    box-shadow: 0 1px 4px rgba(0,0,0,.06) !important;
}
/* Download Karten */
.da-card, .da-grid-item {
    border-radius: 12px !important;
    border: 1.5px solid #e5e7eb !important;
    box-shadow: 0 1px 4px rgba(0,0,0,.06) !important;
}
/* News Karten */
.wnm-post-card, .wnm-card {
    border-radius: 12px !important;
    border: 1.5px solid #e5e7eb !important;
    box-shadow: 0 1px 4px rgba(0,0,0,.06) !important;
}
/* Notenarchiv Karten */
.na-archive-card, .na-card {
    border-radius: 12px !important;
    border: 1.5px solid #e5e7eb !important;
    box-shadow: 0 1px 4px rgba(0,0,0,.06) !important;
}

/* ── Suchfelder vereinheitlichen ─────────────────────────────────────────── */
.na-search-wrapper input,
.da-search-input, .da-searchbar input,
.wnm-search input,
.pr-search input, [id*="search-input"] {
    border: 1.5px solid #e5e7eb !important;
    border-radius: 10px !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    background: #fff !important;
}
.na-search-wrapper input:focus,
.da-search-input:focus,
.wnm-search input:focus {
    border-color: var(--dca, #e67e22) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb,var(--dca,#e67e22) 12%,transparent) !important;
    outline: none !important;
}

/* ── Filter-Chips / Pills vereinheitlichen ───────────────────────────────── */
.na-filter-btn, .na-btn-pill,
.pr-pill,
.da-filter-btn, .da-pill,
.wnm-tag-btn, .wnm-filter-btn {
    border-radius: 20px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    border: 1.5px solid #e5e7eb !important;
    background: #fff !important;
    color: #4b5563 !important;
    padding: 6px 14px !important;
    cursor: pointer !important;
    transition: all .12s !important;
    font-family: inherit !important;
}
.na-filter-btn:hover, .na-btn-pill:hover,
.pr-pill:hover,
.da-filter-btn:hover,
.wnm-tag-btn:hover, .wnm-filter-btn:hover,
.na-filter-btn.active, .na-btn-pill.active, .na-btn-pill.primary,
.pr-pill.active,
.da-filter-btn.active, .da-pill.active,
.wnm-tag-btn.active {
    background: var(--dca, #e67e22) !important;
    border-color: var(--dca, #e67e22) !important;
    color: #fff !important;
}

/* ── Primärbuttons ───────────────────────────────────────────────────────── */
.na-btn-pill.primary,
.da-btn-pill.primary,
.pr-btn-primary,
.wnm-btn-primary, .wnm-submit-btn {
    background: var(--dca, #e67e22) !important;
    border-color: var(--dca, #e67e22) !important;
    color: #fff !important;
}

/* ── Sektions-Überschriften ──────────────────────────────────────────────── */
.pr-section-header h2,
.da-section-title, .da-cat-title,
.wnm-section-title,
.na-cat-title {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #9ca3af !important;
    text-transform: uppercase !important;
    letter-spacing: .7px !important;
    margin-bottom: 12px !important;
}

/* ── Probenplan spezifisch: Termine-Liste ────────────────────────────────── */
.pr-event-card {
    transition: box-shadow .12s, border-color .12s !important;
}
.pr-event-card:hover {
    border-color: var(--dca, #e67e22) !important;
    box-shadow: 0 4px 16px rgba(0,0,0,.10) !important;
}
.pr-event-date-badge {
    background: color-mix(in srgb, var(--dca,#e67e22) 10%, transparent) !important;
    color: var(--dca, #e67e22) !important;
    border-radius: 10px !important;
}
.pr-rsvp-yes, .pr-btn-anmelden { background: var(--dca,#e67e22) !important; border-color: var(--dca,#e67e22) !important; }

/* ── Leer-Zustände ───────────────────────────────────────────────────────── */
.pr-empty-state, .da-empty, .wnm-empty, .na-empty {
    text-align: center !important;
    padding: 48px 24px !important;
    color: #9ca3af !important;
    background: #fafbfc !important;
    border-radius: 12px !important;
    border: 1.5px solid #e5e7eb !important;
}

/* ── Profilseite ─────────────────────────────────────────────────────────── */
.udw-profile-wrap {
    max-width: 700px !important;
    margin: 32px auto !important;
    padding: 0 20px !important;
}
.udw-profile-card, .udw-card {
    background: #fff !important;
    border: 1.5px solid #e5e7eb !important;
    border-radius: 12px !important;
    box-shadow: 0 1px 4px rgba(0,0,0,.06) !important;
    overflow: hidden !important;
    margin-bottom: 16px !important;
}
.udw-card-header {
    padding: 14px 20px !important;
    border-bottom: 1px solid #f6f7f9 !important;
    font-size: 11px !important; font-weight: 700 !important;
    text-transform: uppercase !important; letter-spacing: .7px !important;
    color: #9ca3af !important; background: #fafbfc !important;
}
.udw-card-body { padding: 20px !important; }

/* ── Login-Seite ─────────────────────────────────────────────────────────── */
.udw-login-wrap, .udw-login-card, .login-card {
    max-width: 420px !important;
    margin: 60px auto !important;
}

/* ── Profil: volle Breite wie andere Seiten ──────────────────────────────── */
.udw-profile-wrap,
.udw-profile-container,
[class*="udw-profile"] > .udw-wrap,
.udw-login-wrap {
    max-width: 1000px !important;
    width: 100% !important;
    margin: 32px auto !important;
    padding: 0 20px !important;
    box-sizing: border-box !important;
}

/* ─── UNIFIED FRONTEND FORMS ─────────────────────────────────────────────────
   Einheitliche Formular-Gestaltung für alle Module:
   notenarchiv ([noten_upload]), probenplan, downloads, news, admin-panel
   ─────────────────────────────────────────────────────────────────────────── */

/* Alle Formular-Wrapper auf gleiche max-width */
.na-upload-card, .na-single-wrapper form,
.da-upload-form, .da-form-wrap,
.pr-submit-form, .pr-form-wrap,
.wnm-submit-wrap, .dca-fa-form-wrap,
.dca-form { max-width: 740px; margin: 0 auto; }

/* Label: einheitlich */
.na-form-label, .da-form-label, .pr-form-label,
.wnm-form-label, .dca-label, .dca-fa-label,
.udw-form-label {
    display: block;
    font-size: 11.5px;
    font-weight: 700;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin-bottom: 5px;
}

/* Input / Textarea / Select */
.na-form-input, .na-form-select, .na-form-textarea,
.da-form-input, .da-form-select, .da-form-textarea,
.pr-form-input, .pr-form-select, .pr-form-textarea,
.wnm-form-input, .wnm-form-select, .wnm-form-textarea,
.dca-input, .dca-select, .dca-textarea, .dca-fa-input,
.udw-input, .udw-select, .udw-textarea {
    display: block;
    width: 100%;
    padding: 9px 13px;
    border: 1.5px solid #e5e7eb;
    border-radius: 9px;
    font-size: 14px;
    color: #111827;
    font-family: inherit;
    background: #fff;
    box-sizing: border-box;
    transition: border-color .14s, box-shadow .14s;
    -webkit-appearance: none;
    appearance: none;
}
.na-form-input:focus, .da-form-input:focus, .pr-form-input:focus,
.wnm-form-input:focus, .dca-input:focus, .udw-input:focus,
.na-form-select:focus, .da-form-select:focus, .dca-select:focus,
.na-form-textarea:focus, .da-form-textarea:focus, .dca-textarea:focus {
    outline: none;
    border-color: var(--dca, #e67e22);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--dca,#e67e22) 12%, transparent);
}

/* Select: Pfeil */
.na-form-select, .da-form-select, .pr-form-select, .dca-select, .udw-select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding-right: 36px;
    cursor: pointer;
}

/* Textarea */
.na-form-textarea, .da-form-textarea, .pr-form-textarea,
.wnm-form-textarea, .dca-textarea {
    min-height: 90px;
    resize: vertical;
    line-height: 1.5;
}

/* Form-Gruppe / Feld */
.na-form-group, .da-form-group, .pr-form-group,
.wnm-form-group, .dca-field, .udw-form-group {
    margin-bottom: 16px;
}

/* Hint / Helper-Text */
.na-form-hint, .da-form-hint, .pr-form-hint,
.dca-hint, .udw-form-hint {
    display: block;
    font-size: 12px;
    color: #9ca3af;
    margin-top: 4px;
    line-height: 1.4;
}

/* Submit-Button: einheitlich */
.na-upload-submit, .da-upload-submit, .pr-form-submit,
.wnm-form-submit, .dca-btn-submit, .udw-form-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 11px 24px;
    background: var(--dca, #e67e22);
    color: #fff;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 700;
    font-family: inherit;
    cursor: pointer;
    transition: filter .12s, transform .1s;
    box-shadow: 0 2px 8px color-mix(in srgb, var(--dca,#e67e22) 30%, transparent);
}
.na-upload-submit:hover, .da-upload-submit:hover, .pr-form-submit:hover,
.wnm-form-submit:hover, .dca-btn-submit:hover, .udw-form-submit:hover {
    filter: brightness(.92);
    transform: translateY(-1px);
}
.na-upload-submit:active, .da-upload-submit:active { transform: translateY(0); }

/* Wizard-Schritte (Notenarchiv etc.) */
.na-wizard-steps, .da-wizard-steps, .dca-wizard-steps {
    display: flex;
    gap: 0;
    margin-bottom: 28px;
    border-bottom: 1.5px solid #e5e7eb;
    padding-bottom: 16px;
}
.na-step, .dca-wizard-step {
    display: flex; align-items: center; gap: 8px;
    font-size: 12.5px; font-weight: 600; color: #9ca3af;
    padding: 6px 12px 6px 0;
}
.na-step.active, .dca-wizard-step.active { color: var(--dca,#e67e22); }
.na-step-circle, .dca-wizard-step-num {
    width: 24px; height: 24px; border-radius: 50%;
    background: #f3f4f6; color: #9ca3af;
    display: flex; align-items: center; justify-content: center;
    font-size: 11px; font-weight: 800; flex-shrink: 0;
}
.na-step.active .na-step-circle,
.dca-wizard-step.active .dca-wizard-step-num {
    background: var(--dca,#e67e22); color: #fff;
}

/* Trennlinie zwischen Schritten */
.na-step + .na-step::before, .dca-wizard-step + .dca-wizard-step::before {
    content: ''; display: block; width: 20px; height: 1.5px;
    background: #e5e7eb; margin-right: 12px; flex-shrink: 0;
}

/* Abschnitt-Titel in Formularen (NICHT na-block-header – der hat eigene Styles) */
.dca-form-section-title {
    font-size: 13px; font-weight: 700; color: #6b7280;
    text-transform: uppercase; letter-spacing: .5px;
    margin: 20px 0 12px; padding: 0;
    border: none;
}

/* Upload-Bereich (Drag & Drop) */
.na-dropzone, .da-dropzone, .dca-dropzone {
    border: 2px dashed #d1d5db; border-radius: 12px;
    padding: 32px; text-align: center; cursor: pointer;
    transition: border-color .14s, background .14s;
    background: #f9fafb;
}
.na-dropzone:hover, .da-dropzone:hover, .dca-dropzone:hover,
.na-dropzone.drag-over { border-color: var(--dca,#e67e22); background: color-mix(in srgb, var(--dca,#e67e22) 5%, #fff); }

/* Schutz: na-block-header h3 NIE von unified überschreiben */
