
:root{
  --pmr-bg:#030811;
  --pmr-panel:#07131f;
  --pmr-panel2:#0a1a29;
  --pmr-blue:#08aef0;
  --pmr-blue2:#7de2ff;
  --pmr-text:#f5fbff;
  --pmr-muted:#9eb2c2;
  --pmr-line:rgba(86,197,255,.18);
  --pmr-shadow:0 24px 70px rgba(0,0,0,.35);
}
.pmr-profiles-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin:30px 0;
}
.pmr-profile-card{
  background:linear-gradient(180deg,var(--pmr-panel2),var(--pmr-panel));
  border:1px solid var(--pmr-line);
  border-radius:20px;
  overflow:hidden;
  box-shadow:var(--pmr-shadow);
}
.pmr-profile-image{
  position:relative;
  display:block;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#07111c;
}
.pmr-profile-image img{width:100%;height:100%;object-fit:cover;display:block;transition:.35s transform}
.pmr-profile-card:hover .pmr-profile-image img{transform:scale(1.04)}
.pmr-no-image{display:flex;align-items:center;justify-content:center;height:100%;font-size:48px;font-weight:900;color:var(--pmr-blue)}
.pmr-available{
  position:absolute;right:14px;top:14px;background:#0fbf74;color:white;
  padding:7px 11px;border-radius:999px;font-size:12px;font-weight:800;
}
.pmr-profile-body{padding:20px}
.pmr-profile-body h3{margin:4px 0 8px;font-size:26px}
.pmr-profile-body h3 a{color:var(--pmr-text);text-decoration:none}
.pmr-profile-body p{color:var(--pmr-muted);margin:0 0 18px}
.pmr-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--pmr-blue2);font-weight:800}
.pmr-btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 18px;border-radius:10px;border:1px solid var(--pmr-blue);
  background:linear-gradient(135deg,var(--pmr-blue),#0677d9);
  color:white!important;text-decoration:none!important;font-weight:800;
  cursor:pointer;box-shadow:0 0 24px rgba(5,174,240,.16)
}
.pmr-booking-form-wrap{
  max-width:980px;margin:30px auto;padding:28px;
  background:linear-gradient(180deg,var(--pmr-panel2),var(--pmr-panel));
  border:1px solid var(--pmr-line);border-radius:18px;color:var(--pmr-text);
}
.pmr-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.pmr-form-grid label{display:flex;flex-direction:column;gap:7px}
.pmr-form-grid label>span{font-weight:700}
.pmr-form-grid input,.pmr-form-grid select,.pmr-form-grid textarea{
  width:100%;box-sizing:border-box;background:#06111d;color:white;border:1px solid #19384e;
  border-radius:10px;padding:13px 14px;outline:none
}
.pmr-form-grid input:focus,.pmr-form-grid select:focus,.pmr-form-grid textarea:focus{border-color:var(--pmr-blue)}
.pmr-full{grid-column:1/-1}
.pmr-privacy{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px!important;color:var(--pmr-muted)}
.pmr-privacy input{width:auto;margin-top:4px}
.pmr-submit{margin-top:20px;border:0;font-size:16px}
.pmr-notice{padding:14px 16px;border-radius:10px;margin-bottom:18px}
.pmr-notice.success{background:#0f5f46;color:#ddfff3}
.pmr-notice.error{background:#6f2830;color:#fff1f3}

/* profile page */
.pmr-single{
  background:
    radial-gradient(circle at 20% 0%, rgba(0,174,240,.09), transparent 30%),
    radial-gradient(circle at 90% 10%, rgba(0,119,217,.08), transparent 24%),
    var(--pmr-bg);
  color:var(--pmr-text);
  min-height:70vh;
}
.pmr-single-inner{max-width:1220px;margin:auto;padding:58px 22px 84px}
.pmr-profile-hero{
  position:relative;
  min-height:620px;
  border:1px solid var(--pmr-line);
  border-radius:28px;
  overflow:hidden;
  box-shadow:var(--pmr-shadow);
  background:#06101a;
}
.pmr-profile-hero-bg{
  position:absolute;inset:0;
}
.pmr-profile-hero-bg img{
  width:100%;height:100%;object-fit:cover;display:block;
  filter:saturate(.9) contrast(1.05) brightness(.72);
  transform:scale(1.02);
}
.pmr-profile-hero-bg:after{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(90deg, rgba(2,8,16,.96) 0%, rgba(2,8,16,.84) 34%, rgba(2,8,16,.34) 66%, rgba(2,8,16,.14) 100%),
    linear-gradient(0deg, rgba(2,8,16,.9) 0%, rgba(2,8,16,.15) 44%, rgba(2,8,16,.08) 100%);
}
.pmr-profile-hero-content{
  position:relative;z-index:2;
  min-height:620px;
  display:flex;flex-direction:column;justify-content:flex-end;
  max-width:720px;
  padding:64px;
}
.pmr-profile-title{
  margin:8px 0 12px;
  font-size:clamp(54px,8vw,108px);
  line-height:.9;
  letter-spacing:-.03em;
  text-transform:uppercase;
}
.pmr-profile-tagline{font-size:clamp(20px,2.3vw,30px);color:var(--pmr-blue2);font-weight:700}
.pmr-profile-meta{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 24px}
.pmr-meta-pill{
  display:inline-flex;align-items:center;gap:8px;
  border:1px solid var(--pmr-line);
  background:rgba(4,14,24,.66);
  backdrop-filter:blur(8px);
  padding:9px 12px;border-radius:999px;
  color:#d9eaf4;font-size:14px;
}
.pmr-bookable{
  background:rgba(15,191,116,.14);
  border-color:rgba(15,191,116,.4);
  color:#bfffe2;
}
.pmr-socials{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 28px}
.pmr-socials a{
  border:1px solid var(--pmr-line);
  padding:10px 13px;border-radius:10px;
  color:var(--pmr-text);text-decoration:none;
  background:rgba(5,15,25,.5);
}
.pmr-profile-sections{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  gap:30px;
  margin-top:34px;
}
.pmr-content-card,.pmr-side-card{
  background:linear-gradient(180deg,var(--pmr-panel2),var(--pmr-panel));
  border:1px solid var(--pmr-line);
  border-radius:20px;
  padding:28px;
  box-shadow:0 18px 50px rgba(0,0,0,.2);
}
.pmr-content-card h2,.pmr-side-card h3{margin-top:0}
.pmr-single-content{
  color:#d5e4ef;
  font-size:18px;
  line-height:1.75;
}
.pmr-side-list{display:grid;gap:14px}
.pmr-side-list div{
  padding:13px 0;
  border-bottom:1px solid var(--pmr-line);
}
.pmr-side-list div:last-child{border-bottom:0}
.pmr-side-list small{display:block;color:var(--pmr-muted);margin-bottom:3px}
.pmr-gallery-wrap{margin-top:34px}
.pmr-gallery-wrap h2{margin-bottom:16px}
.pmr-gallery{
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0;
}
.pmr-gallery a,.pmr-gallery span{display:block}
.pmr-gallery img{
  width:100%;aspect-ratio:1/1;object-fit:cover;
  border-radius:14px;border:1px solid var(--pmr-line);
}
.pmr-booking-panel{
  margin-top:42px;
  padding:34px;
  border-radius:22px;
  background:
    radial-gradient(circle at 0% 0%, rgba(0,174,240,.11), transparent 28%),
    linear-gradient(180deg,var(--pmr-panel2),var(--pmr-panel));
  border:1px solid var(--pmr-line);
  box-shadow:var(--pmr-shadow);
}
.pmr-booking-panel h2{margin:0 0 8px;font-size:clamp(30px,4vw,48px)}
.pmr-booking-panel>p{color:var(--pmr-muted);font-size:18px}

/* fallback mini-nav when theme menu is incomplete */
.pmr-profile-nav{
  position:sticky;top:0;z-index:50;
  background:rgba(2,7,14,.94);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--pmr-line);
}
.pmr-profile-nav-inner{
  max-width:1220px;margin:auto;padding:12px 22px;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
}
.pmr-profile-brand{
  font-weight:900;color:white;text-decoration:none;letter-spacing:.08em;
}
.pmr-profile-menu{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.pmr-profile-menu a{color:#dceaf4;text-decoration:none;font-weight:700;font-size:14px}
.pmr-profile-menu a:hover{color:var(--pmr-blue2)}
.pmr-profile-menu .pmr-menu-cta{
  padding:9px 13px;border-radius:9px;background:linear-gradient(135deg,var(--pmr-blue),#0875d4);color:white
}

@media(max-width:980px){
  .pmr-profiles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pmr-profile-sections{grid-template-columns:1fr}
  .pmr-profile-hero,.pmr-profile-hero-content{min-height:540px}
  .pmr-profile-hero-content{padding:42px}
}
@media(max-width:760px){
  .pmr-profile-nav-inner{align-items:flex-start;flex-direction:column}
  .pmr-profile-menu{gap:12px}
  .pmr-profile-hero{min-height:500px}
  .pmr-profile-hero-content{min-height:500px;padding:28px}
  .pmr-gallery{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .pmr-profiles-grid,.pmr-form-grid,.pmr-gallery{grid-template-columns:1fr}
  .pmr-booking-form-wrap{padding:18px}
  .pmr-single-inner{padding-left:14px;padding-right:14px}
  .pmr-profile-title{font-size:46px}
  .pmr-profile-hero-content{padding:24px}
  .pmr-booking-panel{padding:20px}
}


/* dynamic category cards */
.pmr-categories-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  margin:30px 0;
}
.pmr-category-card{
  background:linear-gradient(180deg,var(--pmr-panel2),var(--pmr-panel));
  border:1px solid var(--pmr-line);
  border-radius:20px;
  overflow:hidden;
  box-shadow:var(--pmr-shadow);
}
.pmr-category-media{
  display:block;
  aspect-ratio:16/10;
  background:
    radial-gradient(circle at 50% 25%, rgba(8,174,240,.22), transparent 34%),
    #06111d;
  overflow:hidden;
}
.pmr-category-media img{
  width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease;
}
.pmr-category-card:hover .pmr-category-media img{transform:scale(1.04)}
.pmr-category-placeholder{
  display:flex;align-items:center;justify-content:center;height:100%;
  font-size:90px;font-weight:900;color:var(--pmr-blue2);
  text-shadow:0 0 32px rgba(8,174,240,.28);
}
.pmr-category-body{padding:22px}
.pmr-category-body h3{font-size:30px;margin:5px 0 8px}
.pmr-category-body h3 a{color:var(--pmr-text);text-decoration:none}
.pmr-category-body p{color:var(--pmr-muted);margin:0 0 18px}
@media(max-width:900px){.pmr-categories-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.pmr-categories-grid{grid-template-columns:1fr}}


/* v1.3 booking confirmation */
.pmr-confirm-card{
  max-width:820px;
  margin:60px auto;
  padding:42px;
  text-align:center;
  color:var(--pmr-text);
  background:
    radial-gradient(circle at 50% 0%, rgba(8,174,240,.12), transparent 32%),
    linear-gradient(180deg,var(--pmr-panel2),var(--pmr-panel));
  border:1px solid var(--pmr-line);
  border-radius:24px;
  box-shadow:var(--pmr-shadow);
}
.pmr-confirm-check{
  width:72px;height:72px;margin:0 auto 18px;
  display:flex;align-items:center;justify-content:center;
  border-radius:50%;
  background:#0fbf74;color:white;
  font-size:36px;font-weight:900;
  box-shadow:0 0 35px rgba(15,191,116,.22);
}
.pmr-confirm-card h2{
  font-size:clamp(32px,5vw,52px);
  margin:8px 0 10px;
}
.pmr-confirm-card>p{color:var(--pmr-muted);font-size:18px}
.pmr-confirm-number{
  margin:28px auto;
  padding:20px;
  max-width:460px;
  border-radius:16px;
  border:1px solid rgba(8,174,240,.28);
  background:rgba(8,174,240,.07);
}
.pmr-confirm-number small{display:block;color:var(--pmr-muted);margin-bottom:5px}
.pmr-confirm-number strong{
  display:block;
  font-size:clamp(22px,4vw,34px);
  color:var(--pmr-blue2);
  letter-spacing:.04em;
}
.pmr-confirm-summary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  text-align:left;
  margin:26px 0;
}
.pmr-confirm-summary div{
  padding:15px;
  border-radius:12px;
  background:#06111d;
  border:1px solid var(--pmr-line);
}
.pmr-confirm-summary small{display:block;color:var(--pmr-muted);margin-bottom:4px}
.pmr-confirm-summary strong{display:block}
.pmr-confirm-hint{font-size:14px!important;margin-bottom:24px!important}
@media(max-width:620px){
  .pmr-confirm-card{padding:24px;margin:28px 14px}
  .pmr-confirm-summary{grid-template-columns:1fr}
}

/* v1.4 offer page */
.pmr-offer-page{
  max-width:980px;
  margin:54px auto;
  padding:38px;
  color:var(--pmr-text);
  background:
    radial-gradient(circle at 50% 0%, rgba(8,174,240,.11), transparent 28%),
    linear-gradient(180deg,var(--pmr-panel2),var(--pmr-panel));
  border:1px solid var(--pmr-line);
  border-radius:24px;
  box-shadow:var(--pmr-shadow);
}
.pmr-offer-page h1{font-size:clamp(42px,7vw,76px);margin:6px 0 12px}
.pmr-offer-lead{font-size:19px;color:var(--pmr-muted)}
.pmr-offer-number{margin:20px 0;padding:14px 16px;border:1px solid var(--pmr-line);border-radius:12px;background:#06111d}
.pmr-offer-number strong{color:var(--pmr-blue2)}
.pmr-offer-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}
.pmr-offer-summary div{padding:16px;border-radius:12px;background:#06111d;border:1px solid var(--pmr-line)}
.pmr-offer-summary small{display:block;color:var(--pmr-muted);margin-bottom:4px}
.pmr-offer-description{padding:20px;border-radius:14px;background:#07131f;border:1px solid var(--pmr-line);margin:24px 0}
.pmr-offer-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.pmr-offer-actions form{margin:0}
.pmr-btn-reject{background:linear-gradient(135deg,#8f1f2d,#c73747)!important;border-color:#c73747!important}
.pmr-offer-state{margin-top:26px;padding:18px;border-radius:12px;font-weight:800}
.pmr-offer-state.accepted{background:#0e6244;color:#e0fff2}
.pmr-offer-state.rejected{background:#6d2630;color:#fff0f2}
@media(max-width:760px){.pmr-offer-summary{grid-template-columns:1fr}.pmr-offer-page{margin:28px 14px;padding:24px}}

/* v1.7 public contract acceptance */
.pmr-contract-public{max-width:980px;margin:55px auto;padding:34px;background:#07111c;color:#f4f8fb;border:1px solid rgba(255,255,255,.12);border-radius:22px}
.pmr-contract-public h1{font-size:clamp(38px,6vw,68px);margin:5px 0 8px}
.pmr-contract-meta{color:#8fdcff;margin-bottom:24px}
.pmr-contract-paper{white-space:normal;background:#fff;color:#17202a;border-radius:12px;padding:34px;line-height:1.65;box-shadow:0 15px 45px rgba(0,0,0,.25)}
.pmr-contract-accept-form{margin-top:22px;padding:20px;border:1px solid rgba(20,189,245,.35);border-radius:12px;background:#081722}
.pmr-contract-check{display:block;margin-bottom:18px;line-height:1.55}
.pmr-contract-check input{margin-right:8px}
.pmr-contract-accepted{margin-top:22px;padding:18px;border-radius:12px;background:#0e6244;color:#e5fff3;font-weight:800}
@media(max-width:700px){.pmr-contract-public{margin:25px 12px;padding:20px}.pmr-contract-paper{padding:20px}}


/* ===== PMR Booking Manager v1.8 – Kundenportal ===== */
.pmr-customer-portal{
  max-width:1120px;
  margin:50px auto;
  padding:0 18px;
  color:var(--pmr-text);
}
.pmr-customer-portal-error{
  max-width:760px;padding:32px;border:1px solid var(--pmr-line);
  border-radius:18px;background:var(--pmr-panel);
}
.pmr-customer-hero{
  position:relative;overflow:hidden;
  padding:38px;
  border:1px solid var(--pmr-line);
  border-radius:24px;
  background:
    radial-gradient(circle at 85% 0%,rgba(8,174,240,.14),transparent 28%),
    linear-gradient(180deg,#0a1a29,#07131f);
  box-shadow:var(--pmr-shadow);
}
.pmr-customer-hero h1{font-size:clamp(42px,7vw,76px);margin:7px 0 10px}
.pmr-customer-hero p{color:var(--pmr-muted);font-size:17px;max-width:700px}
.pmr-customer-number{
  margin-top:22px;display:inline-grid;gap:3px;
  padding:12px 15px;border-radius:12px;background:#06111d;border:1px solid var(--pmr-line)
}
.pmr-customer-number small{color:var(--pmr-muted)}
.pmr-customer-number strong{color:var(--pmr-blue2);font-size:20px}
.pmr-customer-statusbar{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0
}
.pmr-customer-statusbar>div{
  padding:18px;border-radius:15px;background:#07131f;border:1px solid var(--pmr-line)
}
.pmr-customer-statusbar small{display:block;color:var(--pmr-muted);margin-bottom:4px}
.pmr-customer-statusbar strong{font-size:21px}
.pmr-customer-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px
}
.pmr-customer-card{
  padding:26px;border-radius:18px;
  background:linear-gradient(180deg,var(--pmr-panel2),var(--pmr-panel));
  border:1px solid var(--pmr-line);
}
.pmr-customer-card h2{font-size:30px;margin:7px 0 16px}
.pmr-customer-card>p{color:var(--pmr-muted);line-height:1.65}
.pmr-customer-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:15px 0 20px}
.pmr-customer-details>div{padding:12px;border-radius:10px;background:#06111d;border:1px solid rgba(86,197,255,.1)}
.pmr-customer-details small{display:block;color:var(--pmr-muted);margin-bottom:3px}
.pmr-customer-details strong{display:block}
.pmr-customer-details .pmr-customer-full{grid-column:1/-1}
.pmr-customer-success{padding:13px 15px;border-radius:10px;background:#0f5f46;color:#ddfff3;margin:0 0 15px}
.pmr-btn-secondary{
  background:#07131f!important;color:#eaf7ff!important;border:1px solid var(--pmr-line)!important
}
.pmr-confirm-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.pmr-customer-timeline{
  margin-top:18px;padding:28px;border:1px solid var(--pmr-line);border-radius:18px;background:#07131f
}
.pmr-customer-timeline h2{font-size:32px;margin:7px 0 18px}
.pmr-customer-timeline-list{display:grid;gap:0}
.pmr-customer-timeline-item{display:grid;grid-template-columns:24px 1fr;gap:12px;position:relative;padding:0 0 20px}
.pmr-customer-timeline-item:after{content:"";position:absolute;left:6px;top:17px;bottom:0;width:1px;background:var(--pmr-line)}
.pmr-customer-timeline-item:last-child:after{display:none}
.pmr-customer-timeline-item>span{width:13px;height:13px;border-radius:50%;background:#0fbf74;margin-top:3px;box-shadow:0 0 0 4px rgba(15,191,116,.12)}
.pmr-customer-timeline-item strong{display:block}
.pmr-customer-timeline-item small{display:block;color:var(--pmr-muted);margin-top:3px}
.pmr-customer-footer-note{
  margin-top:18px;padding:20px;border-radius:14px;border:1px dashed var(--pmr-line);color:var(--pmr-muted)
}
.pmr-customer-footer-note strong{color:var(--pmr-text)}
.pmr-customer-footer-note p{margin:5px 0 0}
@media(max-width:760px){
  .pmr-customer-statusbar,.pmr-customer-grid,.pmr-customer-details{grid-template-columns:1fr}
  .pmr-customer-details .pmr-customer-full{grid-column:auto}
  .pmr-customer-hero{padding:25px}
}

/* v1.8.2 stable contract route */
.pmr-contract-route-wrap{min-height:70vh;padding:24px 0}


/* ===== PMR Booking Manager v1.9 ===== */
.pmr-contract-legal-note{
  margin:0 0 18px;
  padding:16px;
  border-radius:12px;
  border:1px solid rgba(8,174,240,.28);
  background:rgba(8,174,240,.07);
}
.pmr-contract-legal-note strong{display:block;color:#dff7ff;margin-bottom:7px}
.pmr-contract-legal-note p{margin:0;color:#b7c8d5;line-height:1.65}

.pmr-customer-progress{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:0;
  margin:18px 0;
  padding:18px 12px;
  border:1px solid var(--pmr-line);
  border-radius:16px;
  background:#07131f;
}
.pmr-customer-progress-step{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:7px;
  color:#75899a;
}
.pmr-customer-progress-step:not(:last-child):after{
  content:"";
  position:absolute;
  top:15px;
  left:58%;
  right:-42%;
  height:2px;
  background:#173246;
  z-index:0;
}
.pmr-customer-progress-step span{
  position:relative;
  z-index:2;
  width:30px;height:30px;
  border-radius:50%;
  display:grid;place-items:center;
  background:#0a1824;
  border:2px solid #29485d;
  color:white;
  font-weight:900;
}
.pmr-customer-progress-step strong{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.pmr-customer-progress-step.is-done{color:#dff8ff}
.pmr-customer-progress-step.is-done span{
  background:#0fbf74;
  border-color:#0fbf74;
  box-shadow:0 0 0 4px rgba(15,191,116,.12);
}
.pmr-customer-progress-step.is-done:not(:last-child):after{background:#0f8c62}
.pmr-customer-complete{
  margin:0 0 18px;
  padding:16px 18px;
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
  border-radius:14px;
  background:linear-gradient(135deg,#0d6548,#0a4f3a);
  color:#e6fff4;
  border:1px solid rgba(130,255,198,.18);
}
.pmr-customer-complete strong{font-size:18px}
.pmr-customer-complete span{color:#c8f3df}

@media(max-width:760px){
  .pmr-customer-progress{
    grid-template-columns:1fr;
    gap:12px;
    align-items:start;
  }
  .pmr-customer-progress-step{
    display:grid;
    grid-template-columns:34px 1fr;
    align-items:center;
    text-align:left;
  }
  .pmr-customer-progress-step:not(:last-child):after{
    top:30px;bottom:-12px;left:15px;right:auto;width:2px;height:auto;
  }
  .pmr-customer-complete{
    flex-direction:column;
    align-items:flex-start;
  }
}

/* v2.1 invoice card */
.pmr-customer-card .pmr-btn[href*="pmr_invoice_pdf"]{margin-top:4px}

.pmr-customer-payment-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:10px}
.pmr-customer-payment-summary>div{padding:12px;border-radius:10px;background:#06111d;border:1px solid rgba(86,197,255,.1)}

/* v2.6 – Premium multi-step booking */
.pmr-v26-booking{max-width:900px;margin:0 auto}
.pmr-v26-intro{text-align:center;margin-bottom:28px}.pmr-v26-kicker{font-size:12px;letter-spacing:.14em;font-weight:800;opacity:.62}.pmr-v26-intro h2{margin:7px 0 8px;font-size:clamp(28px,4vw,44px)}.pmr-v26-intro p{max-width:650px;margin:0 auto;opacity:.72}
.pmr-v26-progress{display:flex;align-items:center;justify-content:center;margin:24px 0 32px}.pmr-v26-progress button{appearance:none;border:0;background:none;padding:0;display:grid;justify-items:center;gap:5px;opacity:.4;cursor:default}.pmr-v26-progress button span{width:34px;height:34px;border-radius:999px;border:1px solid currentColor;display:grid;place-items:center;font-weight:800}.pmr-v26-progress button small{font-size:11px}.pmr-v26-progress button.is-active,.pmr-v26-progress button.is-done{opacity:1}.pmr-v26-progress button.is-active span,.pmr-v26-progress button.is-done span{background:#111;color:#fff;border-color:#111}.pmr-v26-progress i{height:1px;background:currentColor;opacity:.18;width:min(10vw,75px);margin:0 8px 20px}
.pmr-v26-form{position:relative}.pmr-v26-step{display:none}.pmr-v26-step.is-active{display:block}.pmr-v26-step-head{margin-bottom:20px}.pmr-v26-step-head>span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;opacity:.55}.pmr-v26-step-head h3{font-size:26px;margin:5px 0}
.pmr-v26-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px}.pmr-v26-back{background:transparent!important;color:inherit!important;border:1px solid rgba(0,0,0,.2)!important}
.pmr-v26-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 20px}.pmr-v26-summary>div{padding:12px 14px;border:1px solid rgba(0,0,0,.1);border-radius:10px}.pmr-v26-summary span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;opacity:.55;margin-bottom:4px}.pmr-v26-summary strong{display:block;white-space:pre-wrap;overflow-wrap:anywhere}.pmr-v26-hint{font-size:13px;opacity:.65;margin-top:14px}
@media(max-width:680px){.pmr-v26-progress button small{display:none}.pmr-v26-progress i{margin-bottom:0}.pmr-v26-summary{grid-template-columns:1fr}.pmr-v26-actions{align-items:stretch}.pmr-v26-actions .pmr-btn{flex:1}}

/* v2.7 – Multi-Artist-Auswahl */
.pmr-v27-label{display:block;font-weight:700;margin-bottom:4px}.pmr-v27-help{margin:0 0 14px;opacity:.65;font-size:13px}
.pmr-v27-artist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pmr-v27-artist-card{position:relative;display:block;border:1px solid rgba(0,0,0,.12);border-radius:14px;overflow:hidden;cursor:pointer;background:#fff;transition:.18s ease}.pmr-v27-artist-card:hover{transform:translateY(-1px);border-color:rgba(0,0,0,.3)}.pmr-v27-artist-card input{position:absolute;opacity:0;pointer-events:none}.pmr-v27-artist-visual{display:block;aspect-ratio:4/3;background:#f3f3f3;overflow:hidden}.pmr-v27-artist-visual img{width:100%;height:100%;object-fit:cover;display:block}.pmr-v27-placeholder{display:grid;place-items:center;width:100%;height:100%;font-weight:800;opacity:.25}.pmr-v27-artist-name{display:block;padding:11px 42px 11px 12px;font-weight:750}.pmr-v27-check{position:absolute;right:10px;bottom:10px;width:24px;height:24px;border-radius:999px;border:1px solid rgba(0,0,0,.22);display:grid;place-items:center;font-size:12px;opacity:.35}.pmr-v27-artist-card:has(input:checked){border-color:#111;box-shadow:0 0 0 1px #111}.pmr-v27-artist-card:has(input:checked) .pmr-v27-check{background:#111;color:#fff;opacity:1}.pmr-v27-selection-note{margin-top:12px;font-size:13px;font-weight:650}.pmr-v27-selection-note.is-error{color:#b42318}
.pmr-v27-status-list{display:grid;gap:8px;margin:18px 0}.pmr-v27-status-list a{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:12px 14px;border:1px solid rgba(0,0,0,.1);border-radius:10px;text-decoration:none}.pmr-v27-status-list a span{font-weight:800}.pmr-v27-status-list a small{grid-row:2;opacity:.55}.pmr-v27-status-list a strong{grid-column:2;grid-row:1/3;align-self:center;font-size:13px}
@media(max-width:760px){.pmr-v27-artist-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.pmr-v27-artist-grid{grid-template-columns:1fr}}

/* v2.8 – Live-Verfügbarkeitsprüfung */
.pmr-v28-availability{margin-top:18px;border:1px solid rgba(0,0,0,.1);border-radius:12px;overflow:hidden}
.pmr-v28-availability-head{padding:12px 14px;background:rgba(0,0,0,.025)}.pmr-v28-availability-head strong,.pmr-v28-availability-head small{display:block}.pmr-v28-availability-head small{opacity:.6;margin-top:3px}
.pmr-v28-results{display:grid}.pmr-v28-row{display:flex;justify-content:space-between;gap:14px;padding:11px 14px;border-top:1px solid rgba(0,0,0,.07)}.pmr-v28-row:first-child{border-top:0}.pmr-v28-row strong{font-size:13px;text-align:right}
.pmr-v28-available strong{color:#19723a}.pmr-v28-requested strong{color:#8a5a00}.pmr-v28-booked strong,.pmr-v28-unavailable strong{color:#a12622}
.pmr-v28-muted{padding:12px 14px;opacity:.58;font-size:13px}.pmr-v28-warning{margin:0;padding:11px 14px;background:#fff3cd;color:#664d03;font-size:13px;font-weight:650}
.pmr-v27-artist-card.pmr-v28-card-booked,.pmr-v27-artist-card.pmr-v28-card-unavailable{opacity:.62}.pmr-v27-artist-card.pmr-v28-card-booked:after,.pmr-v27-artist-card.pmr-v28-card-unavailable:after{content:"Belegt";position:absolute;top:9px;left:9px;background:#fff;padding:4px 7px;border-radius:999px;font-size:10px;font-weight:800}.pmr-v27-artist-card.pmr-v28-card-requested:after{content:"Anfrage vorhanden";position:absolute;top:9px;left:9px;background:#fff;padding:4px 7px;border-radius:999px;font-size:10px;font-weight:800}
@media(max-width:560px){.pmr-v28-row{align-items:flex-start;flex-direction:column}.pmr-v28-row strong{text-align:left}}

/* v2.9 – zentrale Multi-Artist-Kundenübersicht */
.pmr-v29-overview{max-width:980px;margin-inline:auto}
.pmr-v29-event{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.pmr-v29-event>div{padding:12px 14px;border:1px solid rgba(0,0,0,.1);border-radius:10px}.pmr-v29-event small,.pmr-v29-event strong{display:block}.pmr-v29-event small{opacity:.55;margin-bottom:3px}
.pmr-v29-status-summary{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 18px}.pmr-v29-status-summary span{padding:6px 9px;border-radius:999px;background:#f2f2f2;font-size:12px;font-weight:750}.pmr-v29-status-summary .is-success{background:#e7f6ec;color:#176b37}.pmr-v29-status-summary .is-muted{opacity:.6}
.pmr-v29-artist-list{display:grid;gap:14px}.pmr-v29-artist{border:1px solid rgba(0,0,0,.11);border-radius:14px;padding:15px}.pmr-v29-artist-top{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:12px}.pmr-v29-avatar{width:56px;height:56px;border-radius:10px;overflow:hidden;background:#f2f2f2}.pmr-v29-avatar img{width:100%;height:100%;object-fit:cover}.pmr-v29-avatar span{display:grid;place-items:center;width:100%;height:100%;font-size:11px;font-weight:800;opacity:.35}.pmr-v29-artist-title h3{margin:0 0 3px;font-size:20px}.pmr-v29-artist-title small{opacity:.55}
.pmr-v29-status{padding:6px 9px;border-radius:999px;font-size:11px;font-weight:800;background:#f1f1f1}.pmr-v29-status-angebot{background:#fff3cd;color:#664d03}.pmr-v29-status-gebucht{background:#e7f6ec;color:#176b37}.pmr-v29-status-abgelehnt{background:#f5f5f5;color:#666}
.pmr-v29-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:15px 0 12px}.pmr-v29-timeline span{position:relative;text-align:center;font-size:10px;padding-top:13px;opacity:.38}.pmr-v29-timeline span:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;border-radius:999px;background:#d7d7d7}.pmr-v29-timeline span.is-done{opacity:1;font-weight:750}.pmr-v29-timeline span.is-done:before{background:#111}
.pmr-v29-note{margin:8px 0 0;padding:8px 10px;border-radius:8px;background:#fff8df;font-size:12px}.pmr-v29-note.is-success{background:#e7f6ec;color:#176b37}.pmr-v29-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.pmr-v29-actions .pmr-btn{font-size:13px;padding:9px 12px}
@media(max-width:680px){.pmr-v29-event{grid-template-columns:1fr 1fr}.pmr-v29-artist-top{grid-template-columns:50px 1fr}.pmr-v29-status{grid-column:2;justify-self:start}.pmr-v29-actions{display:grid}.pmr-v29-actions .pmr-btn{text-align:center}}

/* v3.0 – gemeinsame Angebotsübersicht */
.pmr-v30-offer{margin-top:14px;padding:14px;border-radius:12px;background:rgba(0,0,0,.025);border:1px solid rgba(0,0,0,.08)}
.pmr-v30-offer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.pmr-v30-offer-head>strong{font-size:13px;text-transform:uppercase;letter-spacing:.06em;opacity:.62}.pmr-v30-offer-head>span{font-size:22px;font-weight:850}
.pmr-v30-offer-meta{display:flex;gap:18px;flex-wrap:wrap}.pmr-v30-offer-meta small,.pmr-v30-offer-meta strong{display:block}.pmr-v30-offer-meta small{font-size:10px;text-transform:uppercase;letter-spacing:.04em;opacity:.5}.pmr-v30-offer>p{margin:10px 0 0;font-size:13px;opacity:.74}
.pmr-v30-decision{margin-top:12px;padding:10px 12px;border-radius:9px;font-size:13px;font-weight:800}.pmr-v30-decision.is-accepted{background:#e7f6ec;color:#176b37}.pmr-v30-decision.is-rejected{background:#f2f2f2;color:#666}
.pmr-v30-decision-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.pmr-v30-decision-actions form{margin:0}.pmr-v30-decision-actions .pmr-btn{font-size:13px;padding:9px 12px}
@media(max-width:520px){.pmr-v30-offer-head{align-items:flex-start;flex-direction:column}.pmr-v30-decision-actions{display:grid}.pmr-v30-decision-actions form,.pmr-v30-decision-actions button{width:100%}}

/* v3.1 – Kundenkommunikation */
.pmr-v31-messages{margin-top:24px;padding-top:22px;border-top:1px solid rgba(0,0,0,.1)}
.pmr-v31-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:13px}.pmr-v31-head small{font-size:10px;letter-spacing:.08em;opacity:.5}.pmr-v31-head h3{margin:2px 0 0;font-size:22px}.pmr-v31-head>span{font-size:11px;font-weight:750;opacity:.55}
.pmr-v31-thread{display:grid;gap:9px}.pmr-v31-empty{padding:14px;border-radius:10px;background:#f6f6f6;font-size:13px;opacity:.72}.pmr-v31-message{max-width:82%;padding:10px 12px;border-radius:12px;background:#f2f2f2}.pmr-v31-message.is-customer{margin-left:auto;background:#111;color:#fff}.pmr-v31-message>div{display:flex;justify-content:space-between;gap:15px}.pmr-v31-message small{font-size:10px;opacity:.55}.pmr-v31-message p{margin:5px 0 0;font-size:13px;line-height:1.5}
.pmr-v31-compose{display:grid;gap:9px;margin-top:14px}.pmr-v31-compose label span{display:block;font-size:12px;font-weight:750;margin-bottom:5px}.pmr-v31-compose textarea{width:100%;box-sizing:border-box;border:1px solid rgba(0,0,0,.16);border-radius:10px;padding:11px;resize:vertical}.pmr-v31-compose .pmr-btn{justify-self:start}.pmr-v31-notice{padding:9px 11px;margin-bottom:10px;border-radius:8px;background:#e7f6ec;color:#176b37;font-size:12px;font-weight:750}
@media(max-width:560px){.pmr-v31-message{max-width:92%}.pmr-v31-head{align-items:flex-start;flex-direction:column}}

/* v3.2 – intelligente Alternativ-Artists */
.pmr-v32-alternatives{margin-top:24px;padding-top:22px;border-top:1px solid rgba(0,0,0,.1)}
.pmr-v32-alt-head{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:end;margin-bottom:14px}.pmr-v32-alt-head small{font-size:10px;letter-spacing:.08em;opacity:.5}.pmr-v32-alt-head h3{margin:3px 0 0;font-size:22px}.pmr-v32-alt-head p{margin:0;font-size:12px;line-height:1.5;opacity:.65}
.pmr-v32-alt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.pmr-v32-alt-card{overflow:hidden;border:1px solid rgba(0,0,0,.1);border-radius:13px}.pmr-v32-alt-image{position:relative;height:145px;background:#f1f1f1}.pmr-v32-alt-image img{width:100%;height:100%;object-fit:cover}.pmr-v32-alt-image>span{display:grid;place-items:center;height:100%;font-weight:800;opacity:.25}.pmr-v32-alt-image b{position:absolute;left:8px;bottom:8px;padding:5px 7px;border-radius:999px;background:#e7f6ec;color:#176b37;font-size:9px}
.pmr-v32-alt-body{padding:12px}.pmr-v32-alt-body h4{margin:0 0 4px;font-size:17px}.pmr-v32-alt-body p{margin:0 0 5px;font-size:12px}.pmr-v32-alt-body small{display:block;min-height:30px;opacity:.55;font-size:10px}.pmr-v32-alt-body form{margin-top:10px}.pmr-v32-alt-body .pmr-btn{width:100%;font-size:12px;padding:9px 10px}
.pmr-v32-warning{padding:9px 11px;margin-bottom:10px;border-radius:8px;background:#fff3cd;color:#664d03;font-size:12px;font-weight:750}
@media(max-width:760px){.pmr-v32-alt-grid{grid-template-columns:1fr 1fr}.pmr-v32-alt-head{grid-template-columns:1fr}}
@media(max-width:480px){.pmr-v32-alt-grid{grid-template-columns:1fr}.pmr-v32-alt-image{height:180px}}

/* v3.9 launch hardening */
.pmr-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.pmr-booking-notice{margin:0 0 18px;padding:12px 14px;border-radius:8px;font-size:14px;line-height:1.45;border:1px solid}
.pmr-booking-notice-error{background:#fff4f4;border-color:#e4b5b5}.pmr-booking-notice-warning{background:#fff9e8;border-color:#e6cf8c}

/* v3.11 Artist-Auswahl: lesbarer Kartenfuß */
.pmr-v27-artist-card{color:#111!important;}
.pmr-v27-artist-name{
    background:#fff!important;
    color:#111!important;
    opacity:1!important;
    text-shadow:none!important;
}
.pmr-v27-artist-card:visited .pmr-v27-artist-name,
.pmr-v27-artist-card:hover .pmr-v27-artist-name,
.pmr-v27-artist-card:focus-within .pmr-v27-artist-name{color:#111!important;}

/* v3.12 Artist-Flyer vollständig anzeigen */
.pmr-v27-artist-card .pmr-v27-artist-image,
.pmr-v27-artist-card img{
    object-fit:contain!important;
    object-position:center center!important;
    background:#0b1722!important;
}
.pmr-v27-artist-image{
    aspect-ratio:4/5;
    width:100%;
    height:auto!important;
    min-height:0!important;
    display:block;
}

/* v3.12 final: portrait-friendly Flyerfläche */
.pmr-v27-artist-visual{
    aspect-ratio:4/5!important;
    background:#0b1722!important;
    overflow:hidden!important;
}
.pmr-v27-artist-visual img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
}

/* v3.13 Auswahl-Fallback ohne CSS :has-Abhängigkeit */
.pmr-v27-artist-card.is-selected{
    border-color:#111!important;
    box-shadow:0 0 0 1px #111!important;
}
.pmr-v27-artist-card.is-selected .pmr-v27-check{
    background:#111!important;
    color:#fff!important;
    opacity:1!important;
}
