.psrp-slider{position:relative;overflow:hidden;min-height:var(--psrp-min-height,170px);width:100%;max-width:var(--psrp-max-width,100%);}
.psrp-stack{display:flex;flex-direction:column;gap:var(--psrp-item-gap,22px);overflow:visible;}
.psrp-item{display:none;flex-direction:column;opacity:0;transform:translateX(40px);transition:opacity var(--psrp-animation-duration,.55s) ease,transform var(--psrp-animation-duration,.55s) ease;background:var(--psrp-card-bg,#fff);border-radius:var(--psrp-radius,14px);padding:var(--psrp-padding,20px);box-shadow:var(--psrp-shadow-x,0) var(--psrp-shadow-y,8px) var(--psrp-shadow-blur,24px) var(--psrp-shadow-color,rgba(0,0,0,.08));border:var(--psrp-border-width,0) var(--psrp-border-style,none) var(--psrp-border-color,transparent);box-sizing:border-box;min-height:var(--psrp-min-height,170px);}
.psrp-item.is-active{display:flex;opacity:1;transform:translateX(0);animation:psrpSlideIn var(--psrp-animation-duration,.55s) ease both;}
.psrp-title{margin:0 0 var(--psrp-title-margin-bottom,14px);font-size:var(--psrp-title-size,18px);line-height:var(--psrp-title-line-height,1.35);font-weight:var(--psrp-title-weight,700);color:var(--psrp-title-color,#111827);}
.psrp-content{display:flex;gap:var(--psrp-card-gap,14px);align-items:var(--psrp-content-align,flex-start);flex:1;min-height:0;}
.psrp-avatar-wrap{margin-top:var(--psrp-avatar-margin-top,0);width:var(--psrp-image-size,50px);height:var(--psrp-image-size,50px);min-width:var(--psrp-image-size,50px);border-radius:var(--psrp-image-radius,50%);display:block;position:relative;overflow:hidden;flex:0 0 auto;}
.psrp-avatar{width:100%;height:100%;border-radius:inherit;object-fit:cover;display:block;}
.psrp-text{font-size:var(--psrp-text-size,17px);line-height:var(--psrp-line-height,1.55);font-weight:var(--psrp-text-weight,400);color:var(--psrp-text-color,#222);overflow:visible;max-width:100%;}
.psrp-name{margin-top:auto;padding-top:var(--psrp-name-margin-top,18px);text-align:var(--psrp-name-align,right);font-size:var(--psrp-name-size,15px);font-weight:var(--psrp-name-weight,700);color:var(--psrp-name-color,#555);}
@keyframes psrpSlideIn{from{opacity:0;transform:translateX(55px);}to{opacity:1;transform:translateX(0);}}
@media(max-width:600px){.psrp-content{gap:12px}.psrp-avatar-wrap{width:46px;height:46px;min-width:46px}}

@media(max-width:900px){
  .psrp-title{font-size:var(--psrp-tablet-title-size,var(--psrp-title-size,18px));}
  .psrp-text{font-size:var(--psrp-tablet-text-size,var(--psrp-text-size,17px));}
  .psrp-stack{gap:var(--psrp-tablet-item-gap,var(--psrp-item-gap,22px));}
  .psrp-name{font-size:var(--psrp-tablet-name-size,var(--psrp-name-size,15px));}
  .psrp-item{padding:var(--psrp-tablet-padding,var(--psrp-padding,20px));}
  .psrp-content{gap:var(--psrp-tablet-card-gap,var(--psrp-card-gap,14px));}
  .psrp-avatar-wrap{width:var(--psrp-tablet-image-size,var(--psrp-image-size,50px));height:var(--psrp-tablet-image-size,var(--psrp-image-size,50px));min-width:var(--psrp-tablet-image-size,var(--psrp-image-size,50px));}
}
@media(max-width:600px){
  .psrp-title{font-size:var(--psrp-mobile-title-size,var(--psrp-tablet-title-size,var(--psrp-title-size,18px)));}
  .psrp-text{font-size:var(--psrp-mobile-text-size,var(--psrp-tablet-text-size,var(--psrp-text-size,17px)));}
  .psrp-stack{gap:var(--psrp-mobile-item-gap,var(--psrp-tablet-item-gap,var(--psrp-item-gap,22px)));}
  .psrp-name{font-size:var(--psrp-mobile-name-size,var(--psrp-tablet-name-size,var(--psrp-name-size,15px)));}
  .psrp-item{padding:var(--psrp-mobile-padding,var(--psrp-tablet-padding,var(--psrp-padding,20px)));}
  .psrp-content{gap:var(--psrp-mobile-card-gap,var(--psrp-tablet-card-gap,var(--psrp-card-gap,14px)));flex-direction:var(--psrp-mobile-layout,column);}
  .psrp-avatar-wrap{width:var(--psrp-mobile-image-size,var(--psrp-tablet-image-size,var(--psrp-image-size,50px)));height:var(--psrp-mobile-image-size,var(--psrp-tablet-image-size,var(--psrp-image-size,50px)));min-width:var(--psrp-mobile-image-size,var(--psrp-tablet-image-size,var(--psrp-image-size,50px)));}
}

/* Version 3.0: jede Referenz ist eine eigene Karte. Der Wrapper ist nur Layout, nie Rahmen/Hintergrund. */
.psrp-separated-cards,
.psrp-grid-output{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  border-radius:0 !important;
}
.psrp-separated-cards .psrp-item,
.psrp-grid-output .psrp-item{
  width:100%;
  box-sizing:border-box;
}
.psrp-separated-cards .psrp-item:last-child{margin-bottom:0;}
.psrp-grid-cards{
  display:grid;
  grid-template-columns:repeat(var(--psrp-grid-columns,3), minmax(0,1fr));
  gap:var(--psrp-item-gap,22px);
  width:100%;
}
.psrp-grid-cards .psrp-item{display:flex;opacity:1;transform:none;animation:none;}
.psrp-pagination{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:14px;
  margin-top:24px;
  font-size:15px;
}
.psrp-page-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 14px;
  border:1px solid var(--psrp-border-color, #ddd);
  border-radius:8px;
  text-decoration:none;
  color:var(--psrp-title-color,#111827);
  background:var(--psrp-card-bg,#fff);
}
.psrp-page-current{color:var(--psrp-name-color,#555);}
@media(max-width:900px){.psrp-grid-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--psrp-tablet-item-gap,var(--psrp-item-gap,22px));}}
@media(max-width:600px){.psrp-grid-cards{grid-template-columns:1fr;gap:var(--psrp-mobile-item-gap,var(--psrp-tablet-item-gap,var(--psrp-item-gap,22px)));}.psrp-pagination{flex-wrap:wrap;}}

/* Version 3.1: Weiterlesen und optionale eigene Rasterkarten */
.psrp-read-more{
  display:none;
  align-self:flex-start;
  margin-top:10px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--psrp-read-more-color,#111827);
  font-size:var(--psrp-read-more-size,15px);
  font-weight:var(--psrp-read-more-weight,700);
  line-height:1.3;
  cursor:pointer;
  text-decoration:underline;
  text-underline-offset:3px;
}
.psrp-read-more.is-visible{display:inline-flex;}
.psrp-name + .psrp-read-more{margin-top:0;}
.psrp-grid-output.psrp-grid-custom-card .psrp-grid-cards .psrp-item{
  background:var(--psrp-grid-card-bg,#fff);
  border:var(--psrp-grid-border-width,1px) var(--psrp-grid-border-style,solid) var(--psrp-grid-border-color,#e5e7eb);
  border-radius:var(--psrp-grid-radius,14px);
  padding:var(--psrp-grid-padding,var(--psrp-padding,20px));
  box-shadow:var(--psrp-grid-shadow-x,0) var(--psrp-grid-shadow-y,8px) var(--psrp-grid-shadow-blur,24px) var(--psrp-grid-shadow-color,rgba(0,0,0,.08));
}
.psrp-preview-grid-mode #psrp-live-preview{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--psrp-item-gap,22px);
}
.psrp-preview-grid-mode #psrp-live-preview .psrp-item{
  display:flex;
  opacity:1;
  transform:none;
  animation:none;
}
.psrp-preview-grid-mode #psrp-live-preview.psrp-grid-custom-card .psrp-item{
  background:var(--psrp-grid-card-bg,#fff);
  border:var(--psrp-grid-border-width,1px) var(--psrp-grid-border-style,solid) var(--psrp-grid-border-color,#e5e7eb);
  border-radius:var(--psrp-grid-radius,14px);
  padding:var(--psrp-grid-padding,var(--psrp-padding,20px));
  box-shadow:var(--psrp-grid-shadow-x,0) var(--psrp-grid-shadow-y,8px) var(--psrp-grid-shadow-blur,24px) var(--psrp-grid-shadow-color,rgba(0,0,0,.08));
}
.psrp-preview-slider .psrp-item:nth-child(2){display:none;}
.psrp-preview-grid-mode .psrp-preview-slider .psrp-item:nth-child(2){display:flex;}
@media(max-width:600px){.psrp-preview-grid-mode #psrp-live-preview{grid-template-columns:1fr;}}

/* Version 3.2: Text selbst klappt per Klick auf. Der alte Button bleibt unsichtbar. */
.psrp-read-more{display:none!important;}
.psrp-text.is-expandable{cursor:pointer;}
.psrp-text.is-expandable:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}

/* Version 3.4: Rahmen gezielt pro Ausgabe und Ribbon */
.psrp-item{position:relative;overflow:hidden;}
.psrp-separated-cards:not(.psrp-border-single):not(.psrp-border-stack) .psrp-item,
.psrp-grid-output:not(.psrp-border-grid) .psrp-grid-cards .psrp-item{
  border-width:0!important;
  border-style:none!important;
}
.psrp-ribbon{
  position:absolute;
  top:var(--psrp-ribbon-top,10px);
  right:var(--psrp-ribbon-right,10px);
  z-index:30;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:var(--psrp-ribbon-padding-y,4px) var(--psrp-ribbon-padding-x,8px);
  min-width:48px;
  max-width:min(86px, calc(100% - 20px));
  border-radius:var(--psrp-ribbon-radius,999px);
  background:var(--psrp-ribbon-bg,#ef4444);
  color:var(--psrp-ribbon-color,#fff);
  font-size:var(--psrp-ribbon-size,10px);
  font-weight:800;
  line-height:1;
  letter-spacing:.02em;
  pointer-events:none;
  white-space:nowrap;
  box-shadow:0 4px 10px rgba(0,0,0,.14);
  transform:none;
  filter:none!important;
  mix-blend-mode:normal!important;
}
.psrp-ribbon + .psrp-title{padding-right:72px;}
@media(max-width:600px){
  .psrp-ribbon{top:min(var(--psrp-ribbon-top,10px),10px);right:min(var(--psrp-ribbon-right,10px),10px);font-size:min(10px, var(--psrp-ribbon-size,10px));min-width:42px;max-width:68px;padding:3px 7px;}
  .psrp-ribbon + .psrp-title{padding-right:58px;}
}

/* Frontend Bewertungsformular */
.psrp-review-form-wrap{width:100%;max-width:100%;margin:24px 0;font-family:inherit;color:var(--psrp-form-text-color,#374151)}
.psrp-review-form{background:var(--psrp-form-bg,#fff);border:var(--psrp-form-border-width,1px) solid var(--psrp-form-border-color,#e5e7eb);border-radius:var(--psrp-form-radius,16px);padding:var(--psrp-form-padding,24px);box-shadow:0 10px 30px rgba(0,0,0,.06);color:var(--psrp-form-text-color,#374151)}
.psrp-review-form h3{margin:0 0 18px;font-size:var(--psrp-form-title-size,24px);line-height:1.25;color:var(--psrp-form-title-color,#111827)}
.psrp-review-form p{margin:0 0 var(--psrp-form-gap,16px)}
.psrp-review-form label{display:block;font-weight:700;margin:0 0 7px;color:var(--psrp-form-label-color,#111827);font-size:var(--psrp-form-label-size,15px)}
.psrp-review-form input[type="text"],.psrp-review-form input[type="number"],.psrp-review-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--psrp-form-input-border-color,#d1d5db);border-radius:var(--psrp-form-field-radius,10px);padding:var(--psrp-form-field-padding-y,12px) var(--psrp-form-field-padding-x,14px);font-size:var(--psrp-form-input-size,16px);line-height:1.4;background:var(--psrp-form-input-bg,#fff);color:var(--psrp-form-input-color,#111827)}
.psrp-review-form textarea{resize:vertical;min-height:140px}
.psrp-review-form button{border:0;border-radius:var(--psrp-form-button-radius,999px);background:var(--psrp-form-button-bg,#111827);color:var(--psrp-form-button-color,#fff);padding:var(--psrp-form-button-padding-y,12px) var(--psrp-form-button-padding-x,22px);font-weight:700;cursor:pointer;font-size:var(--psrp-form-input-size,16px)}
.psrp-review-form button:hover{filter:brightness(1.08)}
.psrp-form-note{font-size:var(--psrp-form-text-size,14px);color:var(--psrp-form-text-color,#6b7280)}
.psrp-form-message{border-radius:12px;padding:12px 14px;margin:0 0 var(--psrp-form-gap,16px);font-weight:700}
.psrp-form-message-bottom{margin:var(--psrp-form-gap,16px) 0 0}
.psrp-form-message.is-success{background:var(--psrp-form-message-success-bg,#ecfdf5);color:#065f46;border:1px solid #a7f3d0}
.psrp-form-message.is-error{background:var(--psrp-form-message-error-bg,#fef2f2);color:#991b1b;border:1px solid #fecaca}
.psrp-hp-field{position:absolute!important;left:-9999px!important;opacity:0!important;height:0!important;overflow:hidden!important}
@media(max-width:600px){.psrp-review-form{padding:min(var(--psrp-form-padding,24px),18px);border-radius:var(--psrp-form-radius,14px)}.psrp-review-form h3{font-size:min(var(--psrp-form-title-size,24px),21px)}}

/* Version 5: Bilder immer schwarz-weiß */
.psrp-avatar{filter:grayscale(100%);}

/* Version 5.5: Funktions-Shortcode im gespeicherten zweispaltigen PRO-Layout */
.psrp-feature-section{width:100%;max-width:none;box-sizing:border-box;font-family:inherit;color:#3f3f46;margin:0;padding:0}
.psrp-feature-section h2{margin:0 0 14px;font-size:26px;line-height:1.25;font-weight:800;color:#2f2f35}
.psrp-feature-intro{margin:0 0 26px!important;font-size:16px;line-height:1.55;color:#4b5563}
.psrp-feature-list{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;row-gap:28px;margin:0;font-family:inherit}
.psrp-feature{display:flex;gap:18px;align-items:flex-start;min-width:0}
.psrp-feature-icon{width:28px;min-width:28px;height:28px;display:inline-flex;align-items:flex-start;justify-content:center;color:#5f6368;margin-top:1px}
.psrp-feature-icon svg{width:25px;height:25px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.psrp-feature strong{display:block;font-size:16px;line-height:1.35;color:#34343a;font-weight:800;margin:0 0 7px}
.psrp-feature p{margin:0!important;color:#4f4f55;font-size:15px;line-height:1.55}
@media(max-width:760px){.psrp-feature-list{grid-template-columns:1fr;row-gap:22px}.psrp-feature-section h2{font-size:23px}.psrp-feature{gap:14px}}

/* Version 5.3: Text kann ohne Unterstreichung aufgeklappt werden */
.psrp-text.is-expandable,
.psrp-text.is-expandable:hover,
.psrp-text.is-expandable:focus{
  text-decoration:none!important;
}
.psrp-text.is-expandable:hover{opacity:.88;}

/* Version 5.4: Shimmer sauber getrennt vom Ribbon, wahlweise Karte oder Bild */
.psrp-shimmer-card{position:relative;overflow:hidden;}
.psrp-shimmer-card::before,
.psrp-shimmer-image .psrp-avatar-wrap::before{
  content:"";
  position:absolute;
  z-index:2;
  top:calc((100% - var(--psrp-shimmer-length,180%)) / 2);
  left:calc(-1 * var(--psrp-shimmer-length,180%));
  width:var(--psrp-shimmer-width,42%);
  height:var(--psrp-shimmer-length,180%);
  pointer-events:none;
  transform:rotate(var(--psrp-shimmer-angle,110deg));
  transform-origin:center;
  background:linear-gradient(90deg, transparent 0%, var(--psrp-shimmer-color,rgba(255,255,255,.55)) 50%, transparent 100%);
  animation:psrpShimmer var(--psrp-shimmer-duration,2200ms) ease-in-out infinite;
}
.psrp-shimmer-card > *{position:relative;z-index:1;}
.psrp-shimmer-card .psrp-ribbon{z-index:10!important;filter:none!important;mix-blend-mode:normal!important;}
.psrp-shimmer-image .psrp-ribbon{z-index:10!important;}
.psrp-shimmer-image .psrp-avatar-wrap{position:relative;overflow:hidden;}
.psrp-shimmer-image .psrp-avatar-wrap .psrp-avatar{position:relative;z-index:1;}
@keyframes psrpShimmer{
  0%{left:calc(-1 * var(--psrp-shimmer-length,180%));opacity:0;}
  18%{opacity:1;}
  55%{opacity:1;}
  100%{left:120%;opacity:0;}
}
@media (prefers-reduced-motion: reduce){.psrp-shimmer-card::before,.psrp-shimmer-image .psrp-avatar-wrap::before{animation:none;display:none;}}
