/* PD Buchungsleiste – helle/weiße Buchungsleiste */
.pdbl-wrap{width:100%;}
.pdbl-align-left{text-align:left;}
.pdbl-align-center{text-align:center;}
.pdbl-align-right{text-align:right;}

.pdbl{
    --pdbl-accent:#7a4e22;
    --pdbl-accent-text:#ffffff;
    display:inline-flex;vertical-align:top;text-align:left;
    background:#fff;border-radius:16px;
    box-shadow:0 16px 44px rgba(18,22,40,.16);
    font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
    max-width:100%;box-sizing:border-box;
}
.pdbl *,.pdbl *::before,.pdbl *::after{box-sizing:border-box;}
.pdbl-full{display:flex;width:100%;}
.pdbl-inner{display:flex;align-items:stretch;flex-wrap:nowrap;width:100%;min-width:0;}

.pdbl-field{
    position:relative;display:flex;flex-direction:column;justify-content:center;gap:9px;
    padding:20px 32px;min-width:0;flex:1 1 auto;
    border-right:1px solid #edeff4;margin:0;
    transition:background .15s ease;
}
.pdbl-field:first-child{border-top-left-radius:16px;border-bottom-left-radius:16px;}
.pdbl-field:hover,.pdbl-field:focus-within{background:#f7f8fc;}
.pdbl-field-date{min-width:190px;}
.pdbl-field-occ{min-width:210px;}

.pdbl-label{font-size:13px;font-weight:600;letter-spacing:.03em;color:#8a90a2;line-height:1;}

.pdbl-control{
    appearance:none;-webkit-appearance:none;
    border:0;background:transparent;font-family:inherit;
    font-size:22px;font-weight:700;color:#1b2130;line-height:1.2;
    padding:0;margin:0;outline:none;width:100%;cursor:pointer;
}
input.pdbl-control{cursor:text;color-scheme:light;}
.pdbl-control:focus-visible{color:#000;}

/* Datumsfelder mit Kalender-Icon + dezentem Auswahl-Indikator */
.pdbl-field-date .pdbl-control{
    padding-left:30px;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237a4e22' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:left center;background-size:19px 19px;
}
.pdbl-control::-webkit-calendar-picker-indicator{
    opacity:.55;cursor:pointer;padding:4px;border-radius:6px;transition:opacity .15s ease,background .15s ease;
}
.pdbl-control::-webkit-calendar-picker-indicator:hover{opacity:1;background:rgba(122,78,34,.10);}

.pdbl-occ-toggle{display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;white-space:nowrap;}
.pdbl-occ-summary{overflow:hidden;text-overflow:ellipsis;}
.pdbl-caret{font-size:13px;color:#8a90a2;flex:0 0 auto;}

.pdbl-submit{
    flex:0 0 auto;border:0;cursor:pointer;
    background:var(--pdbl-accent,#7a4e22);color:var(--pdbl-accent-text,#fff);
    font-family:inherit;font-size:19px;font-weight:700;letter-spacing:.02em;
    padding:0 52px;border-top-right-radius:16px;border-bottom-right-radius:16px;
    transition:filter .15s ease;
}
.pdbl-submit:hover{filter:brightness(1.08);}
.pdbl-submit:active{filter:brightness(.94);}

/* Belegung-Popover */
.pdbl-pop{
    position:absolute;top:calc(100% + 10px);left:0;z-index:50;min-width:330px;
    max-height:70vh;overflow-y:auto;
    background:#fff;border-radius:12px;box-shadow:0 16px 44px rgba(18,22,40,.22);
    padding:14px 16px;
}
.pdbl-pop[hidden]{display:none;}

.pdbl-room{padding:12px 0;border-bottom:1px solid #f0f1f5;}
.pdbl-room:first-child{padding-top:2px;}
.pdbl-room:last-of-type{border-bottom:0;}
.pdbl-room-head{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.pdbl-room-name{font-size:14px;font-weight:700;color:#1b2130;}
.pdbl-room-row{display:flex;align-items:center;justify-content:flex-end;margin-top:8px;}

.pdbl-stepper{display:flex;align-items:center;gap:8px;width:100%;justify-content:space-between;}
.pdbl-stepper-label{font-size:13px;color:#6b7180;margin-right:6px;}
.pdbl-step{
    width:30px;height:30px;border-radius:50%;border:1px solid #d7dbe6;background:#fff;
    color:#1b2130;font-size:18px;line-height:1;cursor:pointer;
    display:inline-flex;align-items:center;justify-content:center;padding:0;flex:0 0 auto;
}
.pdbl-step:hover:not(:disabled){border-color:var(--pdbl-accent,#7a4e22);}
.pdbl-step:disabled{opacity:.4;cursor:default;}
.pdbl-num{min-width:18px;text-align:center;font-weight:700;color:#1b2130;}
.pdbl-stepper-label{flex:1 1 auto;}
.pdbl-room-remove{background:none;border:0;color:#b23b3b;font-size:12px;cursor:pointer;text-decoration:underline;padding:0;}

/* Kinderalter */
.pdbl-ages{display:flex;flex-direction:column;gap:8px;margin-top:10px;padding-left:2px;}
.pdbl-age{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.pdbl-age-label{font-size:12px;color:#8a90a2;}
.pdbl-age-select{
    appearance:none;-webkit-appearance:none;
    border:1px solid #d7dbe6;border-radius:8px;background:#fff;
    font-family:inherit;font-size:13px;font-weight:600;color:#1b2130;
    padding:6px 26px 6px 10px;cursor:pointer;outline:none;min-width:96px;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a90a2' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:right 8px center;background-size:12px 12px;
}
.pdbl-age-select:focus,.pdbl-age-select:hover{border-color:var(--pdbl-accent,#7a4e22);}

.pdbl-pop-actions{display:flex;align-items:center;justify-content:space-between;margin-top:14px;gap:10px;}
.pdbl-room-add{background:none;border:1px dashed #c7ccd9;border-radius:8px;color:#1b2130;font-size:13px;font-weight:600;padding:8px 12px;cursor:pointer;}
.pdbl-room-add:hover:not(:disabled){border-color:var(--pdbl-accent,#7a4e22);}
.pdbl-room-add:disabled{opacity:.4;cursor:default;}
.pdbl-pop-done{background:var(--pdbl-accent,#7a4e22);color:var(--pdbl-accent-text,#fff);border:0;border-radius:8px;font-size:13px;font-weight:700;padding:9px 18px;cursor:pointer;}

/* Responsive */
@media (max-width:782px){
    .pdbl,.pdbl-full{display:block;width:100%;}
    .pdbl-inner{flex-wrap:wrap;}
    .pdbl-field{flex:1 1 100%;border-right:0;border-bottom:1px solid #edeff4;padding:16px 22px;}
    .pdbl-field:first-child{border-radius:16px 16px 0 0;}
    .pdbl-field-date,.pdbl-field-occ{min-width:0;}
    .pdbl-submit{width:100%;padding:18px;border-radius:0 0 16px 16px;}
    .pdbl-pop{left:0;right:0;min-width:0;}
}
