Quelltext des aktuellen Standes
/* Verwaltung des Self-Service-Portals (Prefix pa- bzw. pli- für die Symbolauswahl) */
.pa-page .settings-tabs { margin-bottom: 1rem; }
.pa-lead { line-height: 1.55; margin: 0 0 1rem; }
/* Statusleiste über den Karten */
.pa-status {
display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem;
background: var(--color-bg); border: 1px solid var(--color-border);
border-radius: 0.75rem; padding: 0.7rem 1rem; margin-bottom: 1.5rem;
}
.pa-status-item { font-size: 0.84rem; color: var(--color-text-muted); }
.pa-status-item i { margin-right: 0.3rem; color: var(--gray-400); }
.pa-status-action { margin-left: auto; }
/* Hinweisblock innerhalb einer Karte */
.pa-note {
display: flex; gap: 0.6rem; align-items: flex-start;
background: var(--color-bg-alt); border: 1px solid var(--color-border);
border-left: 3px solid var(--color-primary);
border-radius: 0 0.5rem 0.5rem 0; padding: 0.7rem 0.9rem; margin: 0 0 1rem;
font-size: 0.85rem; line-height: 1.55;
}
.pa-note > i { margin-top: 0.15rem; color: var(--color-primary); }
.pa-note--warn { border-left-color: var(--amber-500); background: var(--amber-50); }
.pa-note--warn > i { color: var(--amber-600); }
.pa-note--off { border-left-color: var(--gray-400); }
.pa-note--off > i { color: var(--gray-400); }
/* Das hidden-Attribut muss die Flex-Anzeige der Komponenten überstimmen. */
.pa-note[hidden] { display: none; }
/* Abhängige Abschnitte: sichtbar gedämpft, aber weiterhin bedienbar */
.pa-dependent.is-off { opacity: 0.55; }
/* Bild-Einstellungen: Vorschau links, Felder rechts */
.pa-media { display: flex; gap: 1rem; align-items: flex-start; flex-wrap: wrap; }
.pa-media-preview {
flex: none; display: flex; align-items: center; justify-content: center;
border: 1px solid var(--color-border); border-radius: 0.5rem;
background: var(--color-bg-alt); overflow: hidden; position: relative;
}
.pa-media-preview--logo { width: 180px; height: 72px; padding: 0.4rem; }
.pa-media-preview--logo img { max-width: 100%; max-height: 100%; object-fit: contain; }
.pa-media-preview--bg {
width: 220px; height: 130px;
background-image: linear-gradient(rgba(var(--white-rgb), var(--pa-overlay, 0)), rgba(var(--white-rgb), var(--pa-overlay, 0))), var(--pa-bg, none);
background-size: cover; background-position: center;
}
.pa-media-empty { font-size: 0.78rem; color: var(--color-text-muted); }
.pa-media-caption {
position: absolute; bottom: 0.3rem; right: 0.4rem;
font-size: 0.68rem; color: var(--color-text-muted);
background: var(--color-bg); border-radius: 0.25rem; padding: 0 0.3rem;
}
.pa-media-fields { flex: 1; min-width: 240px; }
.pa-media-remove { margin-top: 0.6rem; }
/* Regler mit Wertanzeige */
.pa-slider { display: flex; align-items: center; gap: 0.75rem; max-width: 460px; }
.pa-slider input[type="range"] { flex: 1; accent-color: var(--color-primary); }
.pa-slider-value {
flex: none; min-width: 3.5rem; text-align: right;
font-variant-numeric: tabular-nums; font-weight: 600; font-size: 0.9rem;
}
/* Zahl mit nachgestellter Einheit */
.pa-inline-field { display: flex; align-items: center; gap: 0.5rem; }
.pa-inline-field input { max-width: 110px; }
.pa-inline-field span { font-size: 0.85rem; color: var(--color-text-muted); }
/* Kennzahlen der Bestätigungsrunde */
.pa-stats { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; margin-top: 0.5rem; }
.pa-stat {
background: var(--color-bg-alt); border: 1px solid var(--color-border);
border-radius: 999px; padding: 0.2rem 0.7rem;
font-size: 0.8rem; color: var(--color-text-muted);
}
.pa-stat strong { color: var(--color-text); }
.pa-stat-link { font-size: 0.8rem; margin-left: auto; }
.pa-stat-link i { font-size: 0.7rem; }
/* Speicherleiste am Ende des Formulars */
.pa-actions {
position: sticky; bottom: 0; z-index: 5;
display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem;
background: var(--color-bg); border: 1px solid var(--color-border);
border-radius: 0.75rem; padding: 0.75rem 1rem; margin-bottom: 1.5rem;
box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.05);
}
.pa-actions-hint { font-size: 0.78rem; color: var(--color-text-muted); }
.pa-form-actions { display: flex; gap: 0.5rem; }
.pa-form-actions .btn[hidden] { display: none; }
/* Tabelle der eigenen Links */
.pa-links-table { margin-bottom: 1.5rem; }
.pa-link-title { display: flex; align-items: flex-start; gap: 0.6rem; }
.pa-link-icon {
display: inline-flex; align-items: center; justify-content: center;
width: 28px; height: 28px; flex: none; border-radius: 0.35rem;
background: var(--color-bg-alt); color: var(--color-text-muted);
}
.pa-link-url { word-break: break-all; }
.pa-link-tab { margin-left: 0.35rem; font-size: 0.7rem; color: var(--gray-400); }
.pa-col-num { text-align: right; }
.pa-col-actions { white-space: nowrap; text-align: right; }
.pa-col-actions form { display: inline; }
.pa-link-form { border-top: 1px solid var(--color-border); padding-top: 1.25rem; }
.pa-subhead { font-size: 1rem; font-weight: 700; margin: 0 0 0.9rem; }
.pa-link-toggles { margin-bottom: 1rem; }
/* Symbolauswahl der eigenen Links */
.pli-picker { border: 1px solid var(--color-border); border-radius: 0.5rem; padding: 0.6rem; max-width: 520px; }
.pli-current { display: flex; align-items: center; gap: 0.6rem; margin-bottom: 0.5rem; }
.pli-preview {
display: inline-flex; align-items: center; justify-content: center;
width: 34px; height: 34px; border-radius: 0.4rem;
background: var(--color-bg-alt); color: var(--color-text);
}
.pli-grid {
display: grid; grid-template-columns: repeat(auto-fill, minmax(38px, 1fr));
gap: 0.3rem; margin-top: 0.5rem; max-height: 190px; overflow-y: auto;
}
.pli-item {
display: flex; align-items: center; justify-content: center;
height: 34px; cursor: pointer;
border: 1px solid transparent; border-radius: 0.35rem;
background: transparent; color: var(--color-text-muted);
}
.pli-item:hover { background: var(--color-bg-alt); color: var(--color-text); }
.pli-item.active { border-color: var(--color-primary); color: var(--color-primary); background: var(--color-bg-alt); }
.pli-empty { grid-column: 1 / -1; padding: 0.5rem; font-size: 0.8rem; color: var(--color-text-muted); }
@media (max-width: 640px) {
.pa-status-action { margin-left: 0; }
.pa-stat-link { margin-left: 0; }
.pa-media-preview--bg { width: 100%; height: 120px; }
}
/* Rückläufer-Report: Aktionen und Filterleiste */
.pa-round-actions { margin-top: 0.85rem; flex-wrap: wrap; }
.pa-round-actions form { margin: 0; }
.pa-filter-tabs { margin-bottom: 1rem; }
.pa-page .kpi-row { margin-bottom: 0.5rem; }
/* Bereiche-Karte: Hinweis auf fehlendes Basismodul */
.pa-mod-req { display: inline-block; margin-top: 0.15rem; color: var(--amber-600); font-weight: 500; }
/* ── Kennzahlen: Verteilung je Monat ────────────────────────────── */
/* Ein Balken je Zeile, in Abschnitten nach Herkunft. Die Breite folgt dem
größten Monat, damit die Monate untereinander vergleichbar bleiben. */
.pa-bar {
display: flex; align-items: stretch; gap: 1px;
height: 0.75rem; border-radius: 999px; overflow: hidden;
background: var(--gray-100);
}
.pa-bar > span { display: block; min-width: 2px; }
.pa-bar-portal { background: var(--emerald-500); }
.pa-bar-mail { background: var(--amber-500); }
.pa-bar-rest { background: var(--gray-400); }