/* ParkAtlas PW-013 – Partner-Buchungsfenster */
.pw013-embed-body{margin:0;background:#f4f8fb;color:#10243a;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}
.pw013-embed-shell{width:min(1120px,calc(100% - 28px));margin:0 auto}
.pw013-embed-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid #dfe9f1;box-shadow:0 8px 30px rgba(7,29,54,.06)}
.pw013-embed-header .pw013-embed-shell{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.pw013-embed-brand,.pw013-brand{display:flex;align-items:center;gap:14px;min-width:0}
.pw013-embed-brand img,.pw013-brand img{display:block;max-width:210px;max-height:56px;object-fit:contain}
.pw013-embed-brand>div,.pw013-brand>div{min-width:0}
.pw013-embed-brand strong,.pw013-brand strong{display:block;color:#071d36;font-size:17px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pw013-embed-brand small,.pw013-brand small{display:block;color:#64778a;font-size:12px;margin-top:4px}
.pw013-brand-fallback{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,var(--pw013-primary,#0f8d88),var(--pw013-accent,#0d4e83));color:#fff;font-size:17px;font-weight:900;box-shadow:0 10px 24px rgba(15,141,136,.22)}
.pw013-secure{display:flex;align-items:center;gap:8px;padding:9px 13px;border-radius:999px;background:#ebf8f6;color:#087b76;font-weight:800;font-size:12px;white-space:nowrap}
.pw013-embed-body main.section{padding:34px 0 24px}
.pw013-embed-body main.section>.container{width:min(1040px,calc(100% - 28px));max-width:none}
.pw013-embed-body .card{border:1px solid #dfe8ef;box-shadow:0 18px 48px rgba(7,29,54,.08);border-radius:24px}
.pw013-embed-body .btn{background:linear-gradient(135deg,var(--pw013-primary,#0f8d88),var(--pw013-accent,#0d4e83));border-color:transparent;box-shadow:0 12px 24px color-mix(in srgb,var(--pw013-primary,#0f8d88) 22%,transparent)}
.pw013-embed-body .btn.secondary{background:#fff;color:var(--pw013-accent,#0d4e83);border-color:#cedde8;box-shadow:none}
.pw013-embed-body .booking-step,.pw013-embed-body .live-price-kicker{background:var(--pw013-primary,#0f8d88)!important;color:#fff!important}
.pw013-embed-body .live-price-card{border-top-color:var(--pw013-primary,#0f8d88)!important}
.pw013-embed-body .pw011-slot-button.is-selected{border-color:var(--pw013-primary,#0f8d88)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--pw013-primary,#0f8d88) 18%,transparent)!important}
.pw013-embed-body .pw011-slot-trigger{border-color:#cfe1e7}
.pw013-embed-body .pw011-slot-trigger:hover{border-color:var(--pw013-primary,#0f8d88)}
.pw013-embed-footer{margin-top:28px;background:#071d36;color:#d8e8f2}
.pw013-embed-footer .pw013-embed-shell{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:12px}
.pw013-powered{color:#afc7d6}.pw013-powered strong{color:#7ee3df}
.pw013-widget-choice{padding:34px 0 48px}
.pw013-widget-intro{text-align:center;max-width:720px;margin:0 auto 24px}
.pw013-widget-intro h1{font-size:clamp(28px,4vw,44px);margin:0 0 12px;color:#071d36}
.pw013-widget-intro p{color:#61758a;font-size:16px;line-height:1.7}
.pw013-parking-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.pw013-parking-card{background:#fff;border:1px solid #dfe9f1;border-radius:22px;padding:22px;box-shadow:0 16px 40px rgba(7,29,54,.07)}
.pw013-parking-card h2{margin:0 0 8px;font-size:20px;color:#071d36}
.pw013-parking-meta{color:#61758a;font-size:14px;line-height:1.6;margin-bottom:18px}
.pw013-parking-price{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:16px}.pw013-parking-price strong{font-size:24px;color:var(--pw013-primary,#0f8d88)}
.pw013-admin-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr);gap:22px;align-items:start}
.pw013-panel{background:#fff;border:1px solid #dfe8ef;border-radius:24px;padding:24px;box-shadow:0 18px 50px rgba(7,29,54,.07)}
.pw013-panel h2{margin-top:0}.pw013-panel p{line-height:1.65}
.pw013-logo-preview{display:flex;align-items:center;justify-content:center;min-height:120px;border:1px dashed #bfd0dc;background:#f8fbfd;border-radius:18px;padding:18px;margin-bottom:14px}
.pw013-logo-preview img{max-width:260px;max-height:90px;object-fit:contain}
.pw013-code{position:relative;background:#071d36;color:#d9eef5;border-radius:18px;padding:18px;overflow:auto;white-space:pre-wrap;word-break:break-word;font:12px/1.65 ui-monospace,SFMono-Regular,Menlo,monospace;min-height:120px}
.pw013-copy{margin-top:10px}.pw013-copy.is-copied{background:#e7f8ef!important;color:#176b39!important;border-color:#bce9ca!important}
.pw013-url{display:flex;gap:8px}.pw013-url .input{min-width:0}.pw013-preview-frame{width:100%;height:820px;border:1px solid #dfe8ef;border-radius:22px;background:#f4f8fb}
.pw013-preview-note{display:flex;align-items:center;gap:10px;background:#edf8f7;border:1px solid #c8e8e5;color:#17605e;border-radius:16px;padding:14px 16px;margin-bottom:16px}
.pw013-setting-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.pw013-setting-group .span-2{grid-column:1/-1}
.pw013-color-field{display:grid;grid-template-columns:48px 1fr;gap:10px}.pw013-color-field input[type=color]{width:48px;height:48px;padding:4px;border:1px solid #cad8e2;border-radius:14px;background:#fff}
.pw013-toggle{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid #dfe8ef;border-radius:16px;background:#f8fbfd}.pw013-toggle input{margin-top:3px}.pw013-toggle strong{display:block}.pw013-toggle small{display:block;color:#65798c;margin-top:4px;line-height:1.45}
.pw013-danger{border-color:#efc7c7;background:#fffafa}
.pw013-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #edf2f6}.pw013-status-row:last-child{border-bottom:0}.pw013-status-pill{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800;background:#e8f8ef;color:#176b39}.pw013-status-pill.off{background:#fff2f2;color:#8b1f1f}
.pw013-basic-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#edf8f7;color:#087b76;font-weight:800;font-size:12px;margin-bottom:12px}
.pw013-logo-callout{border:1px solid #c9e8e5;background:#f0fbfa;border-radius:18px;padding:16px 18px;color:#174c4a;margin:14px 0}
@media(max-width:900px){.pw013-admin-grid{grid-template-columns:1fr}.pw013-preview-frame{height:720px}}
@media(max-width:700px){.pw013-embed-header .pw013-embed-shell{min-height:72px}.pw013-embed-brand small{display:none}.pw013-embed-brand img{max-width:150px;max-height:46px}.pw013-secure span:last-child{display:none}.pw013-embed-body main.section{padding-top:22px}.pw013-embed-footer .pw013-embed-shell{flex-direction:column;justify-content:center;text-align:center;padding:18px 0}.pw013-setting-group{grid-template-columns:1fr}.pw013-setting-group .span-2{grid-column:auto}.pw013-url{flex-direction:column}.pw013-panel{padding:18px;border-radius:20px}}

/* PW-013.2 Premium-Buchungsfenster */
.pw013-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pw013-feature-grid .pw013-toggle{height:100%}
.pw013-preview-banner{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 auto 20px;padding:12px 16px;border:1px solid #f1d59c;border-radius:16px;background:#fff8e8;color:#72510b;box-shadow:0 10px 28px rgba(113,80,10,.08)}
.pw013-preview-banner strong{font-weight:900}.pw013-preview-banner span{font-size:13px}
.pw013-eyebrow{display:inline-flex;padding:7px 11px;border-radius:999px;background:#eaf8f7;color:#087b76;font-size:12px;font-weight:900;letter-spacing:.03em;text-transform:uppercase;margin-bottom:10px}
.pw013-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 24px}
.pw013-trust-grid>div{display:grid;grid-template-columns:40px 1fr;gap:2px 10px;align-items:center;padding:15px 16px;background:#fff;border:1px solid #dfe8ef;border-radius:18px;box-shadow:0 12px 34px rgba(7,29,54,.05)}
.pw013-trust-grid>div>span{grid-row:1/3;display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#eaf8f7;color:var(--pw013-primary,#0f8d88);font-weight:900}
.pw013-trust-grid strong{color:#071d36;font-size:14px}.pw013-trust-grid small{color:#697b8d;font-size:11.5px;line-height:1.4}
.pw013-card-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.pw013-card-topline>span{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eaf8f7;color:#087b76;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.pw013-card-topline small{color:#6c7e90;font-weight:800}
.pw013-card-benefits{display:grid;gap:8px;margin:16px 0 20px;padding:14px;border-radius:16px;background:#f7fafc;border:1px solid #e7eef3;color:#40566b;font-size:13px}
.pw013-parking-card{position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.pw013-parking-card::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--pw013-primary,#0f8d88),var(--pw013-accent,#0d4e83))}
.pw013-parking-card:hover{transform:translateY(-3px);border-color:#cbdde7;box-shadow:0 22px 54px rgba(7,29,54,.12)}
.pw013-compact-price{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:14px 16px;border-radius:16px;background:#f1f8fb;color:#40586e}
.pw013-compact-price strong{font-size:22px;color:var(--pw013-primary,#0f8d88);white-space:nowrap}
.pw013-success-card{text-align:center;max-width:980px;margin:0 auto;padding:34px!important;background:linear-gradient(180deg,#fff,#f8fbfd)!important}
.pw013-success-icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 14px;border-radius:24px;background:linear-gradient(135deg,var(--pw013-primary,#0f8d88),var(--pw013-accent,#0d4e83));color:#fff;font-size:38px;font-weight:900;box-shadow:0 18px 40px rgba(15,141,136,.24)}
.pw013-success-kicker{display:inline-flex;padding:7px 12px;border-radius:999px;background:#eaf8f7;color:#087b76;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.pw013-success-card h1{margin:14px 0 8px;color:#071d36;font-size:clamp(28px,4vw,42px)}
.pw013-success-lead{max-width:680px;margin:0 auto 24px;color:#60758a;line-height:1.7}
.pw013-confirmation-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 24px}
.pw013-confirmation-summary>div{padding:16px;border:1px solid #dfe8ef;border-radius:17px;background:#fff;text-align:left}
.pw013-confirmation-summary span{display:block;color:#75879a;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.pw013-confirmation-summary strong{display:block;color:#071d36;font-size:15px;line-height:1.35;overflow-wrap:anywhere}
.pw013-success-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:stretch;text-align:left}
.pw013-success-info,.pw013-qr-card{border:1px solid #dfe8ef;border-radius:22px;background:#fff;padding:22px}
.pw013-success-info h2{margin:0 0 16px;color:#071d36;font-size:20px}
.pw013-next-steps{display:grid;gap:12px;margin:0 0 18px;padding:0;list-style:none}
.pw013-next-steps li{display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:start}
.pw013-next-steps li>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#edf8f7;color:#087b76;font-weight:900}
.pw013-next-steps strong,.pw013-next-steps small{display:block}.pw013-next-steps strong{color:#071d36}.pw013-next-steps small{color:#6a7d90;margin-top:3px;line-height:1.45}
.pw013-qr-card{text-align:center;background:linear-gradient(180deg,#f7ffff,#fff)}
.pw013-qr-card img{display:block;width:220px;height:220px;max-width:100%;margin:12px auto;padding:8px;background:#fff;border:1px solid #dce7ed;border-radius:18px}
.pw013-qr-card strong,.pw013-qr-card small{display:block}.pw013-qr-card strong{color:#071d36}.pw013-qr-card small{color:#6b7c8e;line-height:1.45;margin-top:7px}
.pw013-qr-label{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eaf8f7;color:#087b76;font-size:11px;font-weight:900;text-transform:uppercase}
.pw013-pin-card,.pw013-contact-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:17px 19px;border-radius:18px;text-align:left}
.pw013-pin-card{background:#071d36;color:#fff}.pw013-pin-card>div span{display:block;color:#a8c8d9;font-size:11px;text-transform:uppercase;font-weight:800}.pw013-pin-card>div strong{display:block;font-size:28px;letter-spacing:.12em}.pw013-pin-card p{margin:0;color:#d5e6ef;max-width:520px}
.pw013-contact-card{background:#f0fbfa;border:1px solid #c9e8e5}.pw013-contact-card strong,.pw013-contact-card span{display:block}.pw013-contact-card strong{color:#174c4a}.pw013-contact-card span{color:#4f706f;margin-top:3px;font-size:13px}
.pw013-contact-actions,.pw013-success-actions{display:flex;gap:10px;flex-wrap:wrap}.pw013-success-actions{justify-content:center;margin-top:22px}
.pw013-success-actions .btn,.pw013-contact-actions .btn{margin:0}
.pw013-embed-body .additional-services-booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pw013-embed-body .additional-service-booking-card{position:relative;display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;padding:16px;border:1px solid #dce7ee;border-radius:18px;background:#fff;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.pw013-embed-body .additional-service-booking-card:hover{transform:translateY(-2px);border-color:var(--pw013-primary,#0f8d88);box-shadow:0 12px 28px rgba(7,29,54,.08)}
.pw013-embed-body .additional-service-booking-card input{position:absolute;top:12px;right:12px;width:18px;height:18px;accent-color:var(--pw013-primary,#0f8d88)}
.pw013-embed-body .additional-service-booking-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#eef8f7;font-size:22px}
.pw013-embed-body .additional-service-booking-content strong,.pw013-embed-body .additional-service-booking-content small,.pw013-embed-body .additional-service-booking-content em{display:block}
.pw013-embed-body .additional-service-booking-content strong{color:#071d36}.pw013-embed-body .additional-service-booking-content small{color:#65798c;margin-top:4px;line-height:1.4}.pw013-embed-body .additional-service-booking-content em{color:#087b76;font-size:11px;margin-top:5px;font-style:normal;font-weight:800}
.pw013-embed-body .additional-service-booking-card>b{color:var(--pw013-primary,#0f8d88);white-space:nowrap;margin-top:26px}
.pw013-embed-body .booking-submit-row .btn[disabled]{opacity:.65;cursor:not-allowed;filter:grayscale(.2)}
@media(max-width:900px){.pw013-confirmation-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.pw013-success-grid{grid-template-columns:1fr}.pw013-qr-card{max-width:360px;width:100%;margin:0 auto}.pw013-feature-grid{grid-template-columns:1fr}}
@media(max-width:700px){.pw013-trust-grid{grid-template-columns:1fr}.pw013-embed-body .additional-services-booking-grid{grid-template-columns:1fr}.pw013-success-card{padding:22px!important}.pw013-confirmation-summary{grid-template-columns:1fr}.pw013-pin-card,.pw013-contact-card{align-items:flex-start;flex-direction:column}.pw013-contact-actions,.pw013-success-actions{width:100%;flex-direction:column}.pw013-contact-actions .btn,.pw013-success-actions .btn{width:100%}.pw013-preview-banner{align-items:flex-start;flex-direction:column}}
@media print{.pw013-embed-header,.pw013-embed-footer,.pw013-success-actions,.pw013-contact-actions{display:none!important}.pw013-embed-body{background:#fff!important}.pw013-success-card{box-shadow:none!important;border:0!important;max-width:none!important}.pw013-success-card,.pw013-success-info,.pw013-qr-card,.pw013-confirmation-summary>div{break-inside:avoid}}
.pw013-embed-body .additional-service-booking-card.is-selected{border-color:var(--pw013-primary,#0f8d88);box-shadow:0 0 0 3px color-mix(in srgb,var(--pw013-primary,#0f8d88) 14%,transparent),0 14px 30px rgba(7,29,54,.08);background:#fbffff}


/* PW-013.2.1 – Preisfix für Zusatzleistungen
   Der Preis erhält eine eigene Zeile. So bleibt jede Karte auch bei langen
   Servicenamen und schmalen Einbettungen innerhalb ihres Rahmens. */
.pw013-embed-body .additional-service-booking-card{
  grid-template-columns:46px minmax(0,1fr);
  align-items:start;
  min-width:0;
  overflow:hidden;
}
.pw013-embed-body .additional-service-booking-icon{
  grid-column:1;
  grid-row:1 / span 2;
}
.pw013-embed-body .additional-service-booking-content{
  grid-column:2;
  min-width:0;
  padding-right:24px;
  overflow-wrap:anywhere;
}
.pw013-embed-body .additional-service-booking-content strong{
  line-height:1.3;
}
.pw013-embed-body .additional-service-booking-card>b{
  grid-column:2;
  justify-self:start;
  margin:9px 0 0;
  padding:5px 9px;
  max-width:100%;
  border-radius:999px;
  background:#eaf8f7;
  color:var(--pw013-primary,#0f8d88);
  font-size:14px;
  line-height:1.2;
  white-space:normal;
  overflow-wrap:anywhere;
}
@media(max-width:700px){
  .pw013-embed-body .additional-service-booking-card{
    grid-template-columns:42px minmax(0,1fr);
  }
  .pw013-embed-body .additional-service-booking-content{
    padding-right:22px;
  }
}
