create PM v0.5
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled

This commit is contained in:
Kevin Adametz 2026-05-20 19:14:39 +02:00
parent 9b47296cea
commit d2ba22c0cf
25 changed files with 2155 additions and 72 deletions

View file

@ -697,3 +697,264 @@
padding-inline-end: 18px;
}
}
/* ============================================================
* Phase 7 Press-Release-Form-Bausteine
* ============================================================
* Vorlage: dev/frontend/tailwind_v3/User Neue Mitteilung presseportale.html
* Bewusst eng auf den Form-Kontext gemünzt. Wird im Hub-Form für
* Counter-Pillen, KI-bald-Hints, Pre-Submit-Checks, Boilerplate-Box,
* Tag-Chips und Portal-/Veröffentlichungs-Optionen verwendet.
*/
@layer components {
.pr-form-label {
display: flex;
align-items: center;
gap: 8px;
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.18em;
text-transform: uppercase;
color: var(--color-ink-3);
margin-bottom: 8px;
}
.pr-form-label .req {
color: var(--color-err);
font-weight: 700;
letter-spacing: 0;
}
.pr-form-help {
font-size: 11.5px;
color: var(--color-ink-4);
margin-top: 6px;
line-height: 1.5;
}
.pr-form-help.warn {
color: var(--color-warn);
}
/* Counter-Pille mit Bar (Titel-, Subline-, Body-Länge) */
.pr-meter {
display: inline-flex;
align-items: center;
gap: 6px;
font-family: var(--font-mono, ui-monospace, monospace);
font-size: 10.5px;
color: var(--color-ink-3);
font-variant-numeric: tabular-nums;
}
.pr-meter .bar {
position: relative;
width: 60px;
height: 4px;
background: var(--color-bg-rule-2);
border-radius: 99px;
overflow: hidden;
}
.pr-meter .bar i {
position: absolute;
inset: 0 auto 0 0;
background: var(--color-hub);
border-radius: 99px;
}
.pr-meter.good .bar i {
background: var(--color-ok);
}
.pr-meter.warn .bar i {
background: var(--color-warn);
}
.pr-meter.err .bar i {
background: var(--color-err);
}
/* KI-bald-Badge — gestrichelter Akzent-Ring */
.pr-bald-badge {
display: inline-flex;
align-items: center;
gap: 5px;
padding: 2px 8px;
border-radius: 99px;
font-size: 9.5px;
font-weight: 700;
letter-spacing: 0.14em;
text-transform: uppercase;
background: var(--color-accent-soft);
color: var(--color-accent-deep);
border: 1px dashed color-mix(in srgb, var(--color-accent) 60%, transparent);
}
.pr-bald-badge::before {
content: "";
width: 4px;
height: 4px;
border-radius: 99px;
background: var(--color-accent);
}
/* KI-Inline-Hint (z.B. KI-Lektorat unter dem Editor) */
.pr-ai-hint {
display: flex;
align-items: center;
gap: 9px;
padding: 8px 11px;
background: color-mix(in srgb, var(--color-accent-soft) 60%, var(--color-bg));
border: 1px dashed color-mix(in srgb, var(--color-accent) 50%, transparent);
border-radius: 4px;
font-size: 11.5px;
color: var(--color-accent-deep);
line-height: 1.45;
}
.pr-ai-hint .ico {
width: 22px;
height: 22px;
border-radius: 4px;
background: var(--color-accent-soft);
color: var(--color-accent-deep);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
/* Pre-Submit-Checkliste */
.pr-check-row {
display: flex;
align-items: flex-start;
gap: 10px;
padding: 7px 0;
font-size: 12.5px;
}
.pr-check-row .ic {
width: 16px;
height: 16px;
border-radius: 99px;
display: inline-flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
margin-top: 1px;
}
.pr-check-row.ok .ic {
background: var(--color-ok-soft);
color: var(--color-ok);
}
.pr-check-row.warn .ic {
background: var(--color-warn-soft);
color: var(--color-warn);
}
.pr-check-row.err .ic {
background: var(--color-err-soft);
color: var(--color-err);
}
.pr-check-row .lbl {
flex: 1;
color: var(--color-ink);
line-height: 1.4;
}
.pr-check-row .lbl .sub {
display: block;
font-size: 11px;
color: var(--color-ink-3);
margin-top: 1px;
}
/* Boilerplate-Box (Read-only Firmenprofil) */
.pr-boiler {
background: var(--color-bg-elev);
border: 1px dashed var(--color-hub-soft-2);
border-radius: 5px;
padding: 14px 16px;
font-family: var(--font-serif, Georgia, serif);
font-size: 13.5px;
color: var(--color-ink-2);
line-height: 1.6;
}
/* Themen-Tag-Chip + Vorschlags-Buttons */
.pr-tag-chip {
display: inline-flex;
align-items: center;
gap: 5px;
padding: 3px 4px 3px 9px;
background: var(--color-hub-soft);
color: var(--color-hub);
border-radius: 3px;
font-size: 11.5px;
font-weight: 500;
}
.pr-tag-chip .x {
width: 16px;
height: 16px;
border-radius: 2px;
display: inline-flex;
align-items: center;
justify-content: center;
color: var(--color-hub);
transition: background 0.12s;
cursor: pointer;
}
.pr-tag-chip .x:hover {
background: var(--color-hub-soft-2);
}
.pr-tag-suggest {
padding: 3px 9px;
background: var(--color-bg-elev);
border: 1px dashed var(--color-hub-soft-2);
border-radius: 3px;
font-size: 11.5px;
color: var(--color-ink-2);
font-weight: 500;
transition: border-color 0.12s, background 0.12s, color 0.12s;
cursor: pointer;
}
.pr-tag-suggest:hover {
border-style: solid;
border-color: var(--color-hub);
background: var(--color-hub-soft);
color: var(--color-hub);
}
/* Veröffentlichungs-Optionen (RadioGroup-Cards) */
.pr-pub-opt {
display: flex;
align-items: flex-start;
gap: 10px;
padding: 8px 12px;
border: 1px solid var(--color-bg-rule);
border-radius: 4px;
background: var(--color-bg-elev);
cursor: pointer;
transition: border-color 0.12s, background 0.12s;
}
.pr-pub-opt:hover {
border-color: var(--color-hub);
}
.pr-pub-opt.is-checked {
border-color: var(--color-hub);
background: var(--color-hub-soft);
box-shadow: inset 0 0 0 1px var(--color-hub);
}
.pr-pub-opt.is-disabled {
opacity: 0.7;
cursor: not-allowed;
}
.pr-pub-opt .dot-out {
width: 14px;
height: 14px;
border-radius: 99px;
border: 2px solid var(--color-ink-4);
flex-shrink: 0;
margin-top: 2px;
position: relative;
}
.pr-pub-opt.is-checked .dot-out {
border-color: var(--color-hub);
background: var(--color-hub);
}
.pr-pub-opt.is-checked .dot-out::after {
content: "";
position: absolute;
inset: 3px;
border-radius: 99px;
background: #fff;
}
}