/* Vertrauen: Verifizierung, Drehvereinbarung, Matching. Baut auf main.css auf. */

.kb-status--abgelehnt { color: #e59aa9; border-color: rgba(194,97,122,.45); background: rgba(194,97,122,.08); }

/* Siegel */
.vt-siegel { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: .15rem .5rem; margin: 0 0 1rem; padding: .35rem .8rem; border: 1px solid rgba(127,208,160,.4); border-radius: 999px; background: rgba(74,158,107,.1); color: #9fdcb8; font-size: .9rem; font-weight: 600; }
.vt-siegel b { font-weight: 600; white-space: nowrap; }
.vt-siegel small { color: var(--text-3); font-weight: 400; }
.vt-v-suche { display: flex; gap: .5rem; align-items: center; margin: 0 0 1.5rem; }
.vt-v-suche input[type=search] { flex: 1; max-width: 360px; padding: .55rem .8rem; border: 1px solid var(--line, rgba(255,255,255,.12)); border-radius: 10px; background: rgba(255,255,255,.04); color: inherit; }
.vt-siegel--gross { font-size: 1rem; padding: .5rem 1rem; }
.vt-siegel--klein { font-size: .78rem; padding: .15rem .6rem; margin: .4rem 0; }

/* Hinweise */
.vt-hinweis { margin: 0 0 1.2rem; padding: .9rem 1.1rem; border-radius: var(--radius-s); border: 1px solid var(--line); background: var(--bg-2); color: var(--text-2); }
.vt-hinweis--warnung { border-color: rgba(201,135,63,.5); background: rgba(201,135,63,.08); color: var(--akzent-hell); }
.vt-hinweis--fehler { border-color: rgba(194,97,122,.5); background: rgba(194,97,122,.08); color: #e59aa9; }
.vt-datenschutz, .vt-recht { font-size: .86rem; color: var(--text-3); border-left: 3px solid var(--akzent-dunkel); padding: .2rem 0 .2rem .9rem; margin: 1rem 0; }
.vt-recht { border-left-color: var(--line); }

/* Schritte */
.vt-schritte { counter-reset: vt; list-style: none; margin: 0 0 1.2rem; padding: 0; display: grid; gap: .6rem; }
.vt-schritte li { counter-increment: vt; position: relative; padding-left: 2.4rem; color: var(--text-2); }
.vt-schritte li::before { content: counter(vt); position: absolute; left: 0; top: -.05rem; width: 1.7rem; height: 1.7rem; border-radius: 50%; display: grid; place-items: center; background: var(--bg-3); border: 1px solid var(--akzent-dunkel); color: var(--akzent-hell); font-size: .85rem; font-weight: 700; }

/* Formularteile */
.vt-gruppe { border: 1px solid var(--line); border-radius: var(--radius-s); padding: .8rem 1rem; margin: 0 0 1rem; }
.vt-gruppe legend { padding: 0 .4rem; color: var(--akzent-hell); font-weight: 600; font-size: .92rem; }
.vt-breit { grid-column: 1 / -1; }
.vt-knoepfe { display: flex; flex-wrap: wrap; gap: .6rem; align-items: center; }
.vt-aktion { margin-top: 1.2rem; }
.vt-btn-warn { border-color: rgba(194,97,122,.6) !important; color: #e59aa9 !important; }
.vt-widerruf { margin-top: 1.4rem; padding-top: 1rem; border-top: 1px dashed var(--line); }

/* Tabellen */
.vt-tabelle { width: 100%; border-collapse: collapse; font-size: .9rem; }
.vt-tabelle th, .vt-tabelle td { text-align: left; padding: .5rem .6rem; border-bottom: 1px solid var(--line); vertical-align: top; }
.vt-tabelle th { color: var(--text-3); font-weight: 600; }
.vt-verlauf { list-style: none; margin: 0; padding: 0; font-size: .86rem; color: var(--text-3); }
.vt-verlauf li { padding: .35rem 0; border-bottom: 1px solid var(--line); }

/* Antwort Ja/Nein */
.vt-antwort { width: 100%; border-collapse: collapse; }
.vt-antwort th, .vt-antwort td { padding: .45rem .5rem; border-bottom: 1px solid var(--line); }
.vt-antwort thead th { font-size: .82rem; color: var(--text-3); text-align: center; }
.vt-antwort tbody th { text-align: left; font-weight: 400; }
.vt-antwort td { text-align: center; width: 4.2rem; }
.vt-antwort input[type="radio"] { width: 1.25rem; height: 1.25rem; accent-color: var(--akzent); }
.vt-antwort .is-nein input[type="radio"] { accent-color: var(--rose); }

/* Matching */
.vt-score { font-variant-numeric: tabular-nums; }
.vt-chips { display: flex; flex-wrap: wrap; gap: .35rem; margin: .5rem 0 .8rem; }
.vt-chip { font-size: .76rem; padding: .15rem .55rem; border-radius: 999px; background: var(--bg-3); border: 1px solid var(--line); color: var(--text-2); }
.vt-chip--minus { color: #e59aa9; border-color: rgba(194,97,122,.4); }
.vt-job--aus { opacity: .6; }
.vt-benachrichtigung { margin-top: 1.6rem; }
.vt-benachrichtigung .vt-push, .vt-benachrichtigung .vt-tg { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--line); }
.vt-anforderung { margin-bottom: 1.2rem; }
.vt-anforderung summary { cursor: pointer; display: flex; flex-wrap: wrap; gap: .3rem 1rem; align-items: baseline; }
.vt-anforderung summary small { color: var(--text-3); }
.vt-anforderung[open] summary { margin-bottom: 1rem; }

.vt-treffer { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1rem; }
.vt-treffer__karte { display: grid; grid-template-columns: 96px 1fr; gap: 1rem; background: var(--bg-2); border: 1px solid var(--line); border-radius: var(--radius); padding: .9rem; }
.vt-treffer__bild { display: block; width: 96px; height: 128px; border-radius: var(--radius-s); overflow: hidden; background: var(--bg-3); }
.vt-treffer__bild img { width: 100%; height: 100%; object-fit: cover; display: block; }
.vt-treffer__text h4 { margin: 0; font-size: 1rem; }
.vt-treffer__text h4 a { color: var(--text); }
.vt-treffer__text .kb-job__daten { margin: .3rem 0; font-size: .86rem; color: var(--text-3); }

/* Verwaltung */
.vt-verwaltung .kb-karte { margin-bottom: 1rem; }
.vt-v-anfrage { border-color: rgba(201,135,63,.45); }
.vt-verwaltung code { font-size: .78rem; word-break: break-all; }

@media (max-width: 720px) {
	.vt-treffer { grid-template-columns: 1fr; }
	.vt-treffer__karte { grid-template-columns: 76px 1fr; }
	.vt-treffer__bild { width: 76px; height: 100px; }
	.vt-antwort td { width: 3rem; }
	.vt-tabelle { display: block; overflow-x: auto; }
	.vt-verwaltung .kb-raster-2 { grid-template-columns: 1fr; }
}

/* Drehvereinbarung im Kundenbereich (dunkles Layout) */
.kb-inhalt .vt-dok, .kb-main .vt-dok { margin: 1rem 0; padding: 1.5rem; border: 1px solid rgba(255,255,255,.08); border-radius: 14px; background: rgba(255,255,255,.02); }
.vt-dok__kopf { border-bottom: 2px solid var(--gold, #c9a45c); margin-bottom: 1rem; padding-bottom: .75rem; }
.vt-dok__marke { margin: 0; color: var(--gold, #c9a45c); font-weight: 700; }
.vt-dok h3 { margin: 1.4rem 0 .5rem; font-size: 1.05rem; color: var(--gold, #c9a45c); }
.vt-dok__meta, .vt-dok__klein, .vt-dok__dl dt, .vt-dok__unterschriften th { color: var(--text-3, #9a948c); font-size: .9rem; }
.vt-dok__hinweis { padding: .75rem .9rem; border-left: 3px solid var(--gold, #c9a45c); border-radius: 6px; background: rgba(201,164,92,.08); font-size: .92rem; }
.vt-dok__widerruf { margin-top: .75rem; padding: .75rem .9rem; border-left: 3px solid #c2617a; border-radius: 6px; background: rgba(194,97,122,.1); font-weight: 600; }
.vt-dok__dl { display: grid; grid-template-columns: minmax(150px, 32%) 1fr; gap: .3rem 1rem; margin: 0; }
.vt-dok__dl dd { margin: 0; }
.vt-dok__unterschriften { width: 100%; border-collapse: collapse; }
.vt-dok__unterschriften th, .vt-dok__unterschriften td { padding: .6rem .5rem; text-align: left; vertical-align: top; border-bottom: 1px solid rgba(255,255,255,.08); }
.vt-dok__unterschriften th { width: 32%; font-weight: 400; }
.vt-dok__name { font-family: "Brush Script MT", "Segoe Script", cursive; font-size: 1.4rem; }
.vt-dok__fuss { margin-top: 1.5rem; padding-top: .75rem; border-top: 1px solid rgba(255,255,255,.08); font-size: .8rem; color: var(--text-3, #9a948c); }
.vt-dok__fuss code { word-break: break-all; font-size: .72rem; }
@media (max-width: 640px) { .vt-dok__dl { grid-template-columns: 1fr; } .vt-dok__dl dt { margin-top: .4rem; } .kb-inhalt .vt-dok, .kb-main .vt-dok { padding: 1rem; } }

.vt-push [hidden] { display: none !important; }
.vt-marke { display: inline-block; margin-left: .4rem; padding: .1rem .55rem; border: 1px solid rgba(127,208,160,.4); border-radius: 999px; background: rgba(74,158,107,.1); color: #9fdcb8; font-size: .72rem; font-weight: 600; letter-spacing: 0; text-transform: none; vertical-align: middle; white-space: nowrap; }

/* Verifizierungsgebühr */
.vt-gebuehr h3 { margin-bottom: .5rem; }
.vt-gebuehr--offen, .vt-gebuehr--nachzahlung { border-color: rgba(201,135,63,.5); }
.vt-gebuehr--frei h3, .vt-gebuehr--bezahlt h3, .vt-gebuehr--erlassen h3 { color: #9fdcb8; }
.vt-gebuehr .vt-hinweis { margin: 1rem 0; }
.vt-gb-zahlen { margin-top: 1rem; }
.vt-gb-zahlen .dspdb-btn--primary { white-space: normal; text-align: center; }
.vt-gb-details { margin: 1rem 0 .5rem; }
.vt-gb-details summary { cursor: pointer; color: var(--akzent-hell); font-size: .92rem; }
.vt-gb-details[open] summary { margin-bottom: .7rem; }
.vt-gb-code { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.vt-gb-code input[type=text] { flex: 1 1 12rem; max-width: 280px; text-transform: uppercase; }
.vt-v-gb-aktionen { flex-direction: column; align-items: stretch; }
.vt-v-gb-aktionen form { margin: 0; }
.kb-kachel.is-on { border-color: var(--akzent); }

/* Verifizierung anstoßen (Verwaltung + Kundenbereich) */
.vt-ast { display: flex; flex-direction: column; align-items: flex-start; gap: .3rem; }
.vt-ast .dspdb-inline-form { margin: 0; }
.vt-ast__stand { color: var(--text-3); font-size: .8rem; line-height: 1.35; }
.vt-ast__sperre { color: var(--akzent-hell); font-size: .78rem; }
.vt-ast button[disabled] { opacity: .45; cursor: not-allowed; }
.vt-ast__wahl, .vt-ast__sprache label { display: inline-flex; flex-wrap: wrap; align-items: center; gap: .4rem; font-size: .8rem; color: var(--text-2); }
.vt-ast__wahl select, .vt-ast__sprache select { max-width: 100%; font-size: .8rem; padding: .25rem .4rem; }
.vt-ast__sprache { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; }
.vt-ast .vt-verlauf { margin-top: .4rem; width: 100%; }
.dspdb-fa-aktionen .vt-ast { display: inline-flex; vertical-align: middle; }
.vt-ast-kasten { border-color: var(--akzent-dunkel); background: linear-gradient(135deg, rgba(201,135,63,.10), transparent 70%); }
.vt-ast-kasten p { margin: 0 0 .8rem; color: var(--text-2); }
.vt-ast-kasten .kb-btn, .vt-ast-kasten .dspdb-btn { margin-top: .2rem; }
