/* Common progress and signed booking-window display for public forms. */
:is(.wwb,.wwgv) :is(.wwb-progress,.wwgv-progress){display:flex;gap:10px;border:0;border-radius:0;overflow:visible;background:none;margin:26px 0 16px;line-height:1.35;font-family:inherit;font-size:15px;text-align:left}
:is(.wwb,.wwgv) :is(.wwb-progress,.wwgv-progress)>span{flex:1;min-width:0;width:auto;display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:14px 16px;border:1px solid #ddd9d0;border-radius:8px;background:#fff;color:#666459;box-shadow:none;letter-spacing:0;font-weight:400}
:is(.wwb,.wwgv) :is(.wwb-progress,.wwgv-progress)>span+span{border-left:1px solid #ddd9d0}
:is(.wwb,.wwgv) :is(.wwb-progress,.wwgv-progress)>span::before{content:attr(data-number);display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;padding:0;border:1px solid #b3ada1;border-radius:50%;color:#666459;font-family:inherit;font-size:14px;line-height:1}
:is(.wwb,.wwgv) :is(.wwb-progress,.wwgv-progress)>span.is-active{background:#f3f1eb;color:#4f5143;border-color:#b4ad9d}
:is(.wwb,.wwgv) :is(.wwb-progress,.wwgv-progress)>span[aria-current=step]{border-color:#8c857a;background:#efede6;color:#3f4237;font-weight:600;box-shadow:none}
:is(.wwb,.wwgv) :is(.wwb-progress,.wwgv-progress)>span[aria-current=step]::before{background:#5e6650;color:#fff;border-color:#5e6650}
:is(.wwb,.wwgv,.ww-pub) .ww-form-window{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 24px;padding:12px 14px;border:1px solid #e1ddd4;border-radius:8px;background:#f8f7f3;color:#656458;font-family:inherit;font-size:14px;line-height:1.45}
:is(.wwb,.wwgv,.ww-pub) .ww-form-window::before{content:"";flex:0 0 16px;width:16px;height:16px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='black' stroke-width='1.6'/%3E%3Cpath d='M12 6v6l4 2' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat}
:is(.wwb,.wwgv,.ww-pub) .ww-form-window [data-window-state]{margin-left:auto;min-width:48px;padding:3px 9px;background:#fff;border:1px solid #e1ddd4;border-radius:5px;font-weight:600;font-variant-numeric:tabular-nums;color:#474b3e;text-align:center}
:is(.wwb,.wwgv,.ww-pub) .ww-form-window.is-ending{border-color:#bda773;background:#fbf6e9;color:#6b571f}
:is(.wwb,.wwgv,.ww-pub) .ww-form-window.is-expired{border-color:#c6a59c;background:#faf0ec;color:#813e32}
:is(.wwb,.wwgv,.ww-pub) .ww-form-window.is-expired [data-window-state]{background:none;border:0;padding:0;min-width:0;font-weight:600;color:inherit}
:is(.wwb,.wwgv,.ww-pub) .ww-form-window button{width:auto;margin:2px 0 0;padding:8px 12px;min-height:40px;border:1px solid #8c857a;border-radius:5px;background:#fff;color:#49483f;font:inherit;letter-spacing:0;text-transform:none;transform:none}
:is(.wwb,.wwgv,.ww-pub) .ww-form-window button[hidden]{display:none!important}
:is(.wwb,.wwgv,.ww-pub) .ww-form-window button:focus-visible{outline:2px solid #5e6650!important;outline-offset:3px}
@media(max-width:480px){:is(.wwb,.wwgv) :is(.wwb-progress,.wwgv-progress){gap:8px;font-size:14px}:is(.wwb,.wwgv) :is(.wwb-progress,.wwgv-progress)>span{flex-direction:column;align-items:flex-start;gap:8px;padding:12px}:is(.wwb,.wwgv,.ww-pub) .ww-form-window{font-size:13px;gap:6px;padding:10px}:is(.wwb,.wwgv,.ww-pub) .ww-form-window.is-expired{align-items:flex-start}}

:is(.wwb,.wwgv,.ww-pub) .ww-form-window[hidden]{display:none!important}

/* Formulare 1.0.6 (development): keep availability-renewal buttons vertically
   centered in the booking-window notice, including the disabled busy state.
   The original 2px top margin made the button look lower than the expiry text. */
:is(.wwb,.wwgv,.ww-pub) .ww-form-window.is-expired{align-items:center}
:is(.wwb,.wwgv,.ww-pub) .ww-form-window > button:is([data-window-reload],[data-window-edit]){
 display:inline-flex;align-items:center;justify-content:center;align-self:center;
 box-sizing:border-box;max-width:100%;margin:0 auto!important;
 min-height:40px;line-height:1.35;text-align:center;
}
