html body .plb-portal,html body .plb-portal *,#page-container .plb-portal,#page-container .plb-portal *{font-family:"Trebuchet MS",Trebuchet,Arial,sans-serif!important}
.plb-portal{--accent:#760076;max-width:900px;margin:2rem auto;padding:clamp(1rem,4vw,2.5rem);background:#fffdfb;border:1px solid #eee7ed;border-radius:28px;color:#2b2630}.plb-portal-test{display:inline-block;background:#efe5dc;color:#6a3f24;padding:.4rem .7rem;border-radius:999px;font-weight:800;font-size:.76rem}.plb-portal-eyebrow{font-size:.78rem;letter-spacing:.12em;color:#8b7e8d;margin-top:1rem}.plb-portal h2{font-size:clamp(2rem,5vw,3.4rem);font-weight:500;line-height:1.05;margin:.4rem 0 1.2rem}.plb-portal h3{font-size:1.2rem;margin-top:0}.plb-portal p,.plb-portal li{color:#6f6873;line-height:1.6}.plb-portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.plb-portal-card,.plb-portal-panel{background:#fff;border:1px solid #e8e1e8;border-radius:19px;padding:1.15rem;margin-bottom:.8rem}.plb-portal-card span{display:block;font-size:.8rem;color:#8a818c}.plb-portal-card strong{font-size:1.35rem}.plb-portal-panel{margin-top:1rem}.plb-checklist{display:grid;gap:.5rem;margin:.8rem 0}.plb-checklist>div{padding:.65rem .8rem;border-radius:12px;background:#f8f4f7;color:#7d717e}.plb-checklist>div.is-done{background:#edf7ef;color:#245b2d}.plb-portal-primary,.plb-portal-secondary{display:inline-block;border:0;background:var(--accent);color:#fff!important;padding:.8rem 1rem;border-radius:999px;font:inherit;font-weight:750;text-decoration:none;cursor:pointer}.plb-portal-secondary{background:#f3ecf3;color:var(--accent)!important}.plb-breakfast-links{display:grid;gap:.7rem}.plb-breakfast-day{padding:.8rem;background:#faf7fa;border-radius:14px}.plb-breakfast-day strong,.plb-breakfast-day a{display:block}.plb-breakfast-day a{margin-top:.35rem;color:var(--accent)}.plb-portal-result{margin-top:.8rem;padding:.7rem;border-radius:12px}.plb-portal-result.is-ok{background:#edf7ef;color:#245b2d}.plb-portal-result.is-error{background:#fff0ef;color:#8e2118}@media(max-width:650px){.plb-portal{margin:.5rem .25rem;border-radius:20px}.plb-portal-grid{grid-template-columns:1fr}}

.plb-portal-primary,.plb-portal-secondary{border-radius:15px!important;border:1px solid #760076!important;background:#fff!important;color:#760076!important}.plb-portal-primary:hover,.plb-portal-primary:focus-visible,.plb-portal-secondary:hover,.plb-portal-secondary:focus-visible{background:#760076!important;color:#fff!important}

/* v0.9.4 radius */
.plb-portal button, .plb-portal input, .plb-portal select, .plb-portal textarea{border-radius:5px!important}

/* v0.9.63 – external reservation concierge/check-in */
.plb-ota-checkin{display:grid;gap:14px}.plb-ota-source-note{display:flex;justify-content:space-between;gap:12px;padding:14px;border:1px solid #e7dce6;border-left:4px solid #760076;border-radius:5px;background:#faf7fa}.plb-ota-source-note span{color:#746b76}.plb-ota-checkin-form{display:grid;gap:14px}.plb-ota-checkin-form label{display:grid;gap:6px;font-weight:700}.plb-ota-checkin-form input{width:100%;padding:11px;border:1px solid #d8ccd7;border-radius:5px;font:inherit}.plb-ota-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.plb-service-choice{display:flex!important;grid-template-columns:none!important;gap:10px!important;align-items:flex-start;padding:12px 0;border-bottom:1px solid #eee5ed}.plb-service-choice input{width:auto!important;margin-top:4px}.plb-service-choice span{display:grid;gap:3px}.plb-service-choice small{font-weight:400;color:#756c77}.plb-ota-checkin .plb-portal-primary{width:100%;min-height:52px;border-radius:5px!important;background:#760076!important;color:#fff!important;border:1px solid #760076!important;font-weight:700}@media(max-width:600px){.plb-ota-grid{grid-template-columns:1fr}.plb-ota-source-note{display:grid}}

/* Minibar */
.plb-minibar-products{display:grid;gap:14px}.plb-minibar-product{display:grid;grid-template-columns:110px 1fr;gap:16px;border:1px solid #eaddea;border-radius:5px;padding:14px;align-items:start}.plb-minibar-product img{width:110px;height:110px;object-fit:contain;border-radius:5px;background:#fff}.plb-minibar-product>div{display:grid;gap:8px}.plb-minibar-product span{font-weight:700;color:#760076}.plb-minibar-product form{display:flex;flex-wrap:wrap;gap:8px;align-items:end}.plb-minibar-product select{min-height:46px;border:1px solid #d8cad8;border-radius:5px;padding:0 12px}.plb-minibar-due{margin-top:18px;padding:16px;border-left:4px solid #760076;background:#faf6fa;border-radius:5px}.plb-minibar-due-row,.plb-minibar-history div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #eee}.plb-minibar-history{margin-top:16px}@media(max-width:560px){.plb-minibar-product{grid-template-columns:80px 1fr}.plb-minibar-product img{width:80px;height:80px}}

/* v0.9.69 – Minibar im gleichen Auswahlprinzip wie Frühstück */
.plb-minibar-category{margin:22px 0}.plb-minibar-category>h4{margin:0 0 12px;font-size:1.15rem}.plb-minibar-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.plb-minibar-product-card{position:relative;border:1px solid #ded4de;border-radius:5px;background:#fff;padding:14px;min-width:0}.plb-minibar-product-card.is-selected{border:2px solid #760076;padding:13px}.plb-minibar-product-card.is-unavailable{opacity:.55}.plb-minibar-image{width:100%;aspect-ratio:4/3;border-radius:5px;overflow:hidden;background:#fafafa;margin-bottom:10px}.plb-minibar-image img{width:100%;height:100%;display:block;object-fit:cover}.plb-minibar-name{display:block;font-size:1.05rem;line-height:1.25;padding-right:6px}.plb-minibar-price{display:block;color:#760076;font-weight:700;margin-top:5px}.plb-minibar-qty-controls{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;gap:8px}.plb-minibar-qty-controls button,.plb-minibar-qty-controls span{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border:2px solid #760076;border-radius:5px;background:#fff;color:#760076;font:inherit;font-size:1.25rem;font-weight:700;box-sizing:border-box}.plb-minibar-qty-controls span{border-radius:50%}.plb-minibar-qty-controls button[hidden],.plb-minibar-qty-controls span[hidden]{display:none!important}.plb-minibar-checkout{margin-top:22px;padding:18px;border:1px solid #ded4de;border-radius:5px;background:#fff}.plb-minibar-checkout h4{margin-top:0}.plb-minibar-summary-line{display:grid;grid-template-columns:1fr auto;gap:12px;padding:9px 0;border-bottom:1px solid #eee}.plb-minibar-total{display:flex;justify-content:space-between;gap:16px;font-size:1.1rem;padding:14px 0}.plb-minibar-checkout .plb-portal-primary{width:100%}@media(max-width:640px){.plb-minibar-products{grid-template-columns:1fr}.plb-minibar-qty-controls button,.plb-minibar-qty-controls span{width:46px;height:46px}}

/* v0.9.72 – dynamic perfect lifestyle® date signets */
.plb-calendar-signet{display:inline-flex;align-items:center;justify-content:center;width:var(--plb-calendar-signet-size,38px);height:var(--plb-calendar-signet-size,38px);line-height:0;flex:0 0 auto}
.plb-calendar-signet svg{display:block;width:100%;height:100%}
.plb-portal-date-pair{display:grid;gap:.65rem;margin-top:.8rem}
.plb-portal-date-line{display:flex;align-items:center;gap:.7rem}
.plb-portal-date-line>span{display:grid;gap:.1rem}
.plb-portal-date-line small{color:#7c737f;font-size:.78rem}
.plb-portal-date-line strong{font-size:.95rem}


/* v0.9.73 – guest count uses the same person signet as the Concierge */
.plb-portal-guests{display:flex;align-items:center;gap:.65rem;margin-top:.85rem;color:#6f6873;font-weight:700}
.plb-portal-guests>span:last-child{display:inline;color:#6f6873;font-size:1rem}
.plb-person-signet{display:inline-flex;align-items:center;justify-content:center;width:var(--plb-person-signet-size,28px);height:var(--plb-person-signet-size,28px);line-height:0;flex:0 0 auto;color:#760076}
.plb-person-signet-2{width:calc(var(--plb-person-signet-size,28px) * 1.2)}
.plb-person-signet svg{display:block;width:100%;height:100%}


/* v0.9.74 – kompakte, aufklappbare Minibar im Gast-Dashboard */
.plb-minibar-collapsible{padding:0!important;overflow:hidden}
.plb-minibar-summary-toggle{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px;cursor:pointer;list-style:none;color:#2b2630;user-select:none}
.plb-minibar-summary-toggle::-webkit-details-marker{display:none}
.plb-minibar-summary-toggle::marker{display:none;content:""}
.plb-minibar-summary-toggle:hover,.plb-minibar-summary-toggle:focus-visible{background:#faf7fa;outline:none}
.plb-minibar-signet{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;color:#760076;flex:0 0 auto}
.plb-minibar-signet svg{width:100%;height:100%;display:block}
.plb-minibar-summary-copy{display:grid;gap:2px;min-width:0}
.plb-minibar-summary-copy strong{font-size:1.18rem;color:#2b2630}
.plb-minibar-summary-copy small{font-size:.9rem;color:#7b727e;font-weight:400}
.plb-minibar-chevron{width:12px;height:12px;border-right:2px solid #760076;border-bottom:2px solid #760076;transform:rotate(45deg);transition:transform .2s ease;margin-right:5px}
.plb-minibar-collapsible[open] .plb-minibar-chevron{transform:rotate(225deg);margin-top:7px}
.plb-minibar-collapsible-body{padding:0 18px 18px;border-top:1px solid #eee6ed}
.plb-minibar-collapsible-body>p:first-child{margin-top:16px}
@media(max-width:560px){.plb-minibar-summary-toggle{padding:15px;gap:12px}.plb-minibar-signet{width:42px;height:42px}.plb-minibar-collapsible-body{padding:0 15px 15px}}


/* v0.9.75 – kräftigeres Gäste-Signet und identische Textachse wie An-/Abreise */
.plb-portal-guests{gap:.7rem!important;min-height:38px}
.plb-portal-guests .plb-person-signet,
.plb-portal-guests .plb-person-signet-2{width:38px!important;height:38px!important;flex:0 0 38px!important;overflow:visible}
.plb-portal-guests .plb-person-signet svg{width:38px!important;height:38px!important;stroke-width:2.8!important;vector-effect:non-scaling-stroke}
.plb-portal-guests .plb-person-signet-2 svg{width:38px!important;height:31px!important}
.plb-portal-guests>span:last-child{align-self:center;font-size:1rem!important;line-height:1.15}


/* v0.9.76 – Gästeanzahl exakt wie das Datums-Hauptlabel */
.plb-portal-date-line strong,
.plb-portal-guests>span:last-child{
  font-size:.95rem!important;
  font-weight:700!important;
  line-height:1.15!important;
  color:#6f6873!important;
}


/* v0.9.78 – central customer-dashboard module design */
.plb-portal{
  --plb-accent:#760076;
  --plb-card-border:#e8e1e8;
  --plb-text:#2b2630;
  --plb-muted:#7b727e;
  --plb-panel-radius:19px;
  --plb-module-icon:46px;
  --plb-module-title:1.2rem;
  --plb-module-subtitle:.9rem;
}
.plb-portal-accordion{padding:0!important;overflow:hidden;border-radius:var(--plb-panel-radius)!important}
.plb-portal-accordion-summary{display:grid;grid-template-columns:var(--plb-module-icon) minmax(0,1fr) 18px;gap:14px;align-items:center;padding:18px;cursor:pointer;list-style:none;color:var(--plb-text);user-select:none}
.plb-portal-accordion-summary::-webkit-details-marker{display:none}
.plb-portal-accordion-summary::marker{display:none;content:""}
.plb-portal-accordion-summary:hover,.plb-portal-accordion-summary:focus-visible{background:#faf7fa;outline:none}
.plb-portal-module-signet{width:var(--plb-module-icon)!important;height:var(--plb-module-icon)!important;display:inline-flex;align-items:center;justify-content:center;color:var(--plb-accent);flex:0 0 var(--plb-module-icon)!important;line-height:0}
.plb-portal-module-signet svg{width:100%!important;height:100%!important;display:block}
.plb-portal-module-copy{display:grid;gap:2px;min-width:0}
.plb-portal-module-copy strong{font-size:var(--plb-module-title)!important;line-height:1.2!important;font-weight:500!important;color:var(--plb-text)!important}
.plb-portal-module-copy small{font-size:var(--plb-module-subtitle)!important;line-height:1.35!important;font-weight:400!important;color:var(--plb-muted)!important}
.plb-portal-chevron{width:12px;height:12px;border-right:2px solid var(--plb-accent);border-bottom:2px solid var(--plb-accent);transform:rotate(45deg);transition:transform .2s ease;margin-right:5px;justify-self:end}
.plb-portal-accordion[open] .plb-portal-chevron{transform:rotate(225deg);margin-top:7px}
.plb-portal-accordion-body{padding:0 18px 18px;border-top:1px solid #eee6ed}
.plb-portal-accordion-body>p:first-child{margin-top:16px}
/* Old minibar-specific declarations must not make Minibar heavier than Frühstück. */
.plb-minibar-summary-copy strong,.plb-minibar-summary-copy small{font-size:inherit;font-weight:inherit;color:inherit}
.plb-minibar-summary-copy strong{font-size:var(--plb-module-title)!important;font-weight:500!important;color:var(--plb-text)!important}
.plb-minibar-summary-copy small{font-size:var(--plb-module-subtitle)!important;font-weight:400!important;color:var(--plb-muted)!important}
.plb-minibar-signet{width:var(--plb-module-icon)!important;height:var(--plb-module-icon)!important}
.plb-minibar-summary-toggle{grid-template-columns:var(--plb-module-icon) minmax(0,1fr) 18px!important;padding:18px!important;gap:14px!important}
.plb-minibar-collapsible-body{padding:0 18px 18px!important}
/* Keep date/product details calm inside the opened sections. */
.plb-breakfast-day{border-radius:5px!important;padding:.9rem 1rem!important}
.plb-breakfast-day>strong{font-size:.95rem!important;color:#2b2630!important}
.plb-breakfast-day a{font-size:.95rem!important;line-height:1.45!important;text-decoration:none}
.plb-breakfast-day a:hover,.plb-breakfast-day a:focus-visible{text-decoration:underline}
@media(max-width:560px){
  .plb-portal{--plb-module-icon:42px;--plb-module-title:1.15rem;--plb-module-subtitle:.88rem}
  .plb-portal-accordion-summary,.plb-minibar-summary-toggle{padding:15px!important;gap:12px!important}
  .plb-portal-accordion-body,.plb-minibar-collapsible-body{padding:0 15px 15px!important}
}


/* v0.10.18 – exact CI support icon + direct WhatsApp contact */
.plb-portal{--plb-accent:#760076!important;--accent:#760076!important}
.plb-portal .plb-portal-module-signet,
.plb-portal .plb-help-signet,
.plb-portal .plb-breakfast-signet,
.plb-portal .plb-minibar-signet{color:#760076!important;-webkit-text-fill-color:#760076!important}
.plb-portal .plb-portal-module-signet svg,
.plb-portal .plb-portal-module-signet svg *{vector-effect:non-scaling-stroke}
.plb-portal .plb-whatsapp-direct{color:#760076!important;-webkit-text-fill-color:#760076!important;font-weight:700!important;text-decoration:none!important;white-space:nowrap}
.plb-portal .plb-whatsapp-direct:hover,.plb-portal .plb-whatsapp-direct:focus-visible{text-decoration:underline!important;color:#760076!important}
