/* v2.8 – Dokumente bei der Bestellung (Auftragsbestätigung, Rechnung) */
.pl-docs {
  margin: 0 0 2rem;
  padding: 1.25rem 1.25rem 0.5rem;
  border: 1px solid #dde4ec;
  border-radius: 12px;
  background: #fff;
}
.woocommerce-account .pl-docs .pl-docs__title {
  margin: 0 0 0.5rem;
  font-size: 1.05rem;
  font-weight: 600;
  color: #1b365d;
}
.pl-docs__list { list-style: none; margin: 0; padding: 0; }
.pl-doc {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  margin: 0;
  padding: 0.85rem 0;
  border-top: 1px solid #dde4ec;
}
.pl-doc:first-child { border-top: 0; }
.pl-doc__icon {
  flex: 0 0 40px;
  height: 40px;
  border-radius: 10px;
  background: #eef7fa;
  position: relative;
}
.pl-doc__icon::before {
  content: "";
  position: absolute;
  inset: 9px;
  background: #0fa3c4;
  -webkit-mask: var(--pl-doc-icon) center / contain no-repeat;
  mask: var(--pl-doc-icon) center / contain no-repeat;
}
.pl-doc__icon { --pl-doc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 3v5h5'/%3E%3Cpath d='M9 13l2 2 4-4'/%3E%3C/svg%3E"); }
.pl-doc__icon--invoice { --pl-doc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 3v5h5'/%3E%3Cpath d='M9 13h6M9 17h4'/%3E%3C/svg%3E"); }
.pl-doc__icon--agb { --pl-doc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4.5A1.5 1.5 0 0 1 6.5 3H19v15H6.5A1.5 1.5 0 0 0 5 19.5z'/%3E%3Cpath d='M5 19.5A1.5 1.5 0 0 0 6.5 21H19v-3'/%3E%3Cpath d='M9 7h6M9 10.5h6'/%3E%3C/svg%3E"); }
.pl-doc__text { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; line-height: 1.35; }
.pl-doc__text strong { color: #1b365d; font-weight: 600; }
.pl-doc__text span { color: #6b7889; font-size: 0.875rem; }
.woocommerce-account .woocommerce-MyAccount-content .pl-doc .button.pl-doc__btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.5rem 0.95rem !important;
  font-size: 0.9rem !important;
  line-height: 1.2 !important;
}
.pl-doc__btn::before {
  content: "";
  width: 15px;
  height: 15px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E") center / contain no-repeat;
}
.pl-doc__pending {
  flex: 0 0 auto;
  padding: 0.3rem 0.7rem;
  border-radius: 999px;
  background: #eef2f6;
  color: #6b7889;
  font-size: 0.8rem;
}
@media (max-width: 600px) {
  .pl-doc { flex-wrap: wrap; }
  .pl-doc__text { flex-basis: calc(100% - 56px); }
  .woocommerce-account .woocommerce-MyAccount-content .pl-doc .button.pl-doc__btn,
  .pl-doc__pending { margin-left: 56px; }
}

/* v2.9 – E-Rechnung als XML */
.woocommerce-account .pl-doc__text a.pl-doc__xml {
  align-self: flex-start;
  margin-top: 0.2rem;
  font-size: 0.82rem;
  color: #0fa3c4;
  text-decoration: none;
  border-bottom: 1px solid rgba(15, 163, 196, 0.35);
}
.woocommerce-account .pl-doc__text a.pl-doc__xml:hover { color: #1b365d; border-color: #1b365d; }

/* 2.9.2 – Rechnungs-E-Mail */
.pl-docs__note { margin: 14px 0 0; padding-top: 12px; border-top: 1px solid #dde4ec; color: #6b7889; font-size: 0.875rem; }
.pl-docs__note strong { color: #1b365d; font-weight: 600; }
.pl-docs__note a { color: #0fa3c4; text-decoration: none; }
.pl-docs__note a:hover { color: #1b365d; text-decoration: underline; }

/* 2.9.3 – Status „In Prüfung“, Hinweis Vorkasse */
.pl-status--check { background: #eef1f6; color: #1b365d; }
.pl-bank-hold { margin: 0 0 24px; padding: 14px 16px; border: 1px solid #dde4ec; border-left: 3px solid #0fa3c4; border-radius: 10px; background: #f7fbfd; color: #1b365d; }

/* v3.2 – Zahlung per Überweisung mit GiroCode (Kundenportal, Danke-Seite) */
.pl-giro {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  margin: 0 0 2rem;
  padding: 1.25rem;
  border: 1px solid #dde4ec;
  border-left: 3px solid #0fa3c4;
  border-radius: 12px;
  background: #fff;
}
.pl-giro__body { flex: 1 1 auto; min-width: 0; }
.woocommerce .pl-giro .pl-giro__title,
.woocommerce-account .pl-giro .pl-giro__title {
  margin: 0 0 0.4rem;
  font-size: 1.05rem;
  font-weight: 600;
  color: #1b365d;
}
.pl-giro__text { margin: 0 0 0.75rem; color: #212934; font-size: 0.95rem; line-height: 1.5; }
.pl-giro__rows {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 0.25rem 1rem;
  margin: 0;
  font-size: 0.9rem;
}
.pl-giro__rows dt { margin: 0; color: #6b7889; font-weight: 400; }
.pl-giro__rows dd { margin: 0; color: #1b365d; font-weight: 600; overflow-wrap: anywhere; }
.pl-giro__qr {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.35rem;
  text-align: center;
}
.pl-giro__qr svg { display: block; width: 168px; height: 168px; max-width: 100%; }
.pl-giro--compact .pl-giro__qr svg { width: 150px; height: 150px; }
.pl-giro__qr span { max-width: 170px; color: #6b7889; font-size: 0.78rem; line-height: 1.3; }
.pl-giro--compact { align-items: center; }
.pl-giro--compact .pl-giro__qr { order: 2; }
@media (max-width: 600px) {
  .pl-giro { flex-direction: column; align-items: stretch; }
  .pl-giro__qr { align-self: center; }
  .pl-giro--compact .pl-giro__qr { order: 0; }
  .pl-giro__rows { grid-template-columns: 1fr; gap: 0; }
  .pl-giro__rows dd { margin-bottom: 0.4rem; }
}
