.wbp-form{--wbp-gap:24px;--wbp-card:#fffaf4;--wbp-accent:#167c7c;--wbp-cta:#be501a;color:#174b4c;max-width:980px;margin:0 auto}.wbp-form *{box-sizing:border-box}.wbp-form__header{border-left:4px solid var(--wbp-accent);margin-bottom:var(--wbp-gap);padding-left:16px}.wbp-form__header h3,.wbp-form h4{color:var(--wbp-accent);margin:0 0 8px}.wbp-form__header p{margin:0}.wbp-form__fields{display:grid;gap:var(--wbp-gap);grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:var(--wbp-gap)}.wbp-form__card,.wbp-form__upload{background:var(--wbp-card);border:1px solid rgba(22,124,124,.18);border-radius:14px;padding:24px}.wbp-form label{color:#174b4c;display:block;font-weight:700;margin:16px 0 6px}.wbp-form input[type=text],.wbp-form select,.wbp-form textarea{background:#fff;border:1px solid rgba(23,75,76,.3);border-radius:8px;padding:12px;width:100%}.wbp-form input[type=file]{display:block;max-width:100%}.wbp-form__photo-help,.wbp-form__help{color:#315f60;margin:12px 0}.wbp-crop-parent{background:#93d5d3;height:550px;margin:20px auto 0;max-width:750px;overflow:hidden;position:relative}.wbp-form [data-wbp-submit]{background:var(--wbp-cta);border:0;border-radius:7px;color:#fff;cursor:pointer;display:block;font-weight:700;margin:var(--wbp-gap) auto 0;padding:14px 30px}.wbp-form__error,.wbp-form__runtime-error{color:#b42318;font-weight:700}.wbp-overlay{background:rgba(255,255,255,.7);bottom:0;display:none;height:100%;left:0;position:fixed;right:0;top:0;width:100%;z-index:50}@media(max-width:767px){.wbp-form__fields{grid-template-columns:1fr}.wbp-form__card,.wbp-form__upload{padding:18px}.wbp-crop-parent{margin-left:-20px}.wbp-form [data-wbp-canvas]{max-width:none}}
.wbp-flow__step[hidden]{display:none}.wbp-flow__field{margin:0 0 18px}.wbp-flow__choice{font-weight:400!important;margin:8px 0!important}.wbp-flow__choice input{margin-right:8px}.wbp-flow__actions{display:flex;gap:12px;justify-content:space-between;margin-top:24px}.wbp-flow__actions button{background:#167c7c;border:0;border-radius:7px;color:#fff;cursor:pointer;font-weight:700;padding:12px 18px}.wbp-flow__actions button[data-wbp-back]{background:#e7f0ef;color:#174b4c}.wbp-flow__status{min-height:1.5em}.wbp-flow__retry{margin:12px 0}.wbp-flow__retry button{background:transparent;border:1px solid #b42318;border-radius:7px;color:#b42318;cursor:pointer;padding:9px 12px}.wbp-flow__photo-return{color:#8a4b08;font-weight:700}.wbp-flow [aria-busy=true]{opacity:.65;pointer-events:none}@media(max-width:767px){.wbp-flow__actions{align-items:stretch;flex-direction:column-reverse}.wbp-flow__actions button{width:100%}}
.wbp-flow__progress{display:flex;gap:10px;list-style:none;margin:0 0 20px;padding:0}.wbp-flow__progress li{align-items:center;border:1px solid currentColor;border-radius:999px;display:flex;gap:7px;line-height:1;padding:8px 12px}.wbp-flow__progress [aria-current=step]{background:#167c7c;border-color:#167c7c;color:#fff}.wbp-flow__progress span{font-size:.875em}@media(max-width:767px){.wbp-flow__progress{gap:6px}.wbp-flow__progress li{justify-content:center;min-width:32px;padding:8px}.wbp-flow__progress span{display:none}}

/* Waberry 0.5.9 UI consolidation — replaces all prior incremental UI overrides. */
.wbp-form.wbp-flow .wbp-flow__progress li.wbp-flow__progress-accessible,
.wbp-form.wbp-flow .wbp-flow__progress li.wbp-flow__progress-accessible * {cursor:pointer!important;user-select:none!important;-webkit-user-select:none!important;transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s;}
.wbp-form.wbp-flow .wbp-flow__progress li.wbp-flow__progress-accessible:hover {background:#d6efed!important;border-color:#137f87!important;color:#105c62!important;box-shadow:0 2px 7px rgba(19,127,135,.14)!important;}
.wbp-form.wbp-flow .wbp-flow__progress li.wbp-flow__progress-accessible:focus-visible {outline:3px solid #137f87!important;outline-offset:3px!important;}
.wbp-form.wbp-flow .wbp-flow__progress li[aria-current="step"] {cursor:default!important;}
/* Theme/Elementor may override button padding, text or height. Constrain the actual buttons. */
.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-back],
.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-next],
.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-submit] {
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 box-sizing:border-box!important;flex:0 0 auto!important;width:auto!important;
 height:48px!important;min-height:48px!important;max-height:48px!important;
 margin:0!important;padding:0 20px!important;border-radius:7px!important;
 line-height:1.2!important;font-size:16px!important;font-weight:700!important;
 text-decoration:none!important;text-transform:none!important;box-shadow:none!important;
 cursor:pointer!important;transition:background-color .18s,color .18s,border-color .18s!important;
}
.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-back] {background:#e7f0ef!important;color:#ffffff!important;border:1px solid #167c7c!important;}
.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-back]:hover {background:#d3e8e6!important;color:#ffffff!important;}
.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-next],
.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-submit] {background:#007f89!important;color:#fff!important;border:1px solid #007f89!important;}
.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-next]:hover,
.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-submit]:hover {background:#00646e!important;border-color:#00646e!important;color:#fff!important;}
.wbp-form.wbp-flow .wbp-flow__actions>button:focus-visible {outline:3px solid #137f87!important;outline-offset:3px!important;}
.wbp-form.wbp-flow .wbp-flow__actions>button:disabled {cursor:wait!important;opacity:.7;}
.wbp-wait-screen {position:fixed;inset:0;z-index:99999;background:rgba(255,255,255,.77);display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;}
.wbp-wait-screen__inner {max-width:340px;display:flex;flex-direction:column;gap:12px;align-items:center;color:#174b4c;font-weight:700;font-size:18px;}
.wbp-wait-screen__img {width:min(220px,65vw);height:auto;display:block;}
@media(max-width:767px){.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-back],.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-next],.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-submit]{width:100%!important;}}
@media(prefers-reduced-motion:reduce){.wbp-form.wbp-flow .wbp-flow__progress li.wbp-flow__progress-accessible,.wbp-form.wbp-flow .wbp-flow__actions>button{transition:none!important;}.wbp-wait-screen__img{display:none;}}
/* Hide loading text; keep animated GIF and overlay */
.wbp-wait-screen__inner > span {
    display: none !important;
}
/* Bukvite cover selection: visual examples, radio values unchanged. */
.wbp-flow__letters-cover{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:0;padding:0;margin:18px 0}
.wbp-flow__letters-cover legend{font-weight:700;padding-bottom:10px}
.wbp-form.wbp-flow .wbp-flow__cover-option{display:flex;flex-direction:column;align-items:center;gap:9px;cursor:pointer;margin:0!important;padding:12px;border:2px solid #cbdcda;border-radius:12px;background:#fff}
.wbp-form.wbp-flow .wbp-flow__cover-option:has(input:checked){border-color:#007f89;background:#edf9f7}
.wbp-flow__cover-option img{display:block;width:100%;max-width:220px;max-height:280px;object-fit:contain;border-radius:7px}
.wbp-flow__cover-option input{align-self:flex-start;accent-color:#007f89}
.wbp-flow__cover-option:focus-within{outline:2px solid #007f89;outline-offset:2px}
@media(max-width:420px){.wbp-flow__letters-cover{gap:8px}.wbp-form.wbp-flow .wbp-flow__cover-option{padding:7px}}

/* Bukvite: show already chosen qualities as unavailable in other occurrences. */
.wbp-flow__choice--unavailable { opacity: .48; cursor: not-allowed; }
.wbp-flow__choice--unavailable input { cursor: not-allowed; }

/* Bukvite: immediate, accessible name feasibility error beside the name field. */
.wbp-form.wbp-flow .wbp-flow__name-feasibility:not([hidden]){display:block;margin:9px 0 16px;padding:12px 14px;background:#fff0ee;border:2px solid #b42318;border-left-width:5px;border-radius:8px;color:#9e1b12;font-weight:700;line-height:1.45}
.wbp-form.wbp-flow [name="your-name"][aria-invalid="true"]{border:2px solid #b42318!important;box-shadow:0 0 0 2px rgba(180,35,24,.12)}

/* Bukvite: clear, localized and accessible validation for missing letter choices. */
.wbp-form.wbp-flow .wbp-flow__letters-group--invalid{
  border:2px solid #b42318!important;
  border-left-width:5px!important;
  background:#fff5f3!important;
  border-radius:8px;
  padding:14px;
  scroll-margin-top:110px;
}
.wbp-form.wbp-flow .wbp-flow__letters-group--invalid legend{color:#a11d15!important;font-weight:700}
.wbp-form.wbp-flow .wbp-flow__quality-error{display:block;margin:9px 0 2px;padding:9px 12px;color:#9e1b12;background:#ffe5e1;border-radius:6px;font-weight:700;line-height:1.4}
.wbp-form.wbp-flow .wbp-flow__letters-group--invalid:focus{outline:2px solid #b42318;outline-offset:3px}

/* Unified four-book validation (step-scoped, no native English tooltips). */
.wbp-form.wbp-flow .wbp-flow__field--invalid{border:2px solid #b42318!important;border-radius:9px;background:#fff5f3!important;padding:12px!important;scroll-margin-top:110px}
.wbp-form.wbp-flow .wbp-flow__field--invalid input:not([type=radio]):not([type=checkbox]),.wbp-form.wbp-flow .wbp-flow__field--invalid select,.wbp-form.wbp-flow .wbp-flow__field--invalid textarea{border:2px solid #b42318!important}
.wbp-form.wbp-flow .wbp-flow__field--invalid>label,.wbp-form.wbp-flow .wbp-flow__field--invalid>legend{color:#a11d15!important}
.wbp-form.wbp-flow .wbp-flow__required-error{color:#9e1b12;background:#ffe5e1;font-weight:700;border-radius:6px;padding:9px 12px;margin:10px 0 0}
.wbp-form.wbp-flow.wbp-flow--local-file-picker [data-wbp-file]{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden!important;clip-path:inset(50%)!important}
.wbp-form.wbp-flow .wbp-flow__file-picker{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0}
.wbp-form.wbp-flow .wbp-flow__file-button{display:inline-block!important;margin:0!important;padding:12px 18px;border-radius:7px;background:#007f89;color:#fff!important;cursor:pointer;font-weight:700}
.wbp-form.wbp-flow .wbp-flow__file-name{overflow-wrap:anywhere}
.wbp-form.wbp-flow [data-wbp-file]:focus-visible + .wbp-flow__file-picker .wbp-flow__file-button{outline:3px solid #137f87;outline-offset:3px}


/* Waberry 2.0 — approved secondary actions and step navigation; staging */
.wbp-form.wbp-flow .wbp-flow__actions {
  display:flex!important;flex-direction:row!important;align-items:center!important;
  justify-content:space-between!important;flex-wrap:wrap!important;gap:12px!important;
}
.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-next],
.wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-submit] {margin-left:auto!important;}
.wbp-form.wbp-flow button.wbp-flow__new-instance {
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:auto!important;max-width:100%!important;min-height:48px!important;height:auto!important;
  margin:0!important;padding:11px 20px!important;line-height:1.35!important;
  background:#fff!important;color:#00858b!important;border:1px solid #00858b!important;
  border-radius:7px!important;font-size:16px!important;font-weight:700!important;
  text-align:center!important;text-decoration:none!important;text-transform:none!important;
  box-shadow:none!important;cursor:pointer!important;
}
.wbp-form.wbp-flow button.wbp-flow__new-instance:hover {
  background:#eaf7f6!important;color:#00646e!important;border-color:#00646e!important;
}
.wbp-form.wbp-flow button.wbp-flow__new-instance:focus-visible {
  outline:3px solid #00858b!important;outline-offset:3px!important;
}
.wbp-form.wbp-flow button.wbp-flow__new-instance--separate {
  display:flex!important;margin:22px 0 0!important;width:max-content!important;
}
@media(max-width:767px) {
  .wbp-form.wbp-flow .wbp-flow__actions {flex-direction:row!important;align-items:stretch!important;}
  .wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-back],
  .wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-next],
  .wbp-form.wbp-flow .wbp-flow__actions>button[data-wbp-submit],
  .wbp-form.wbp-flow .wbp-flow__actions>button.wbp-flow__new-instance {
    width:auto!important;max-width:100%!important;flex:1 1 180px!important;
    height:auto!important;min-height:48px!important;white-space:normal!important;
  }
  .wbp-form.wbp-flow button.wbp-flow__new-instance--separate {
    width:100%!important;margin-top:22px!important;
  }
}


/* Waberry 2.0 — Fix secondary button and message field */

/* Remove CMSMasters animated green overlay */
.wbp-form.wbp-flow button.wbp-flow__new-instance::before,
.wbp-form.wbp-flow button.wbp-flow__new-instance::after {
    content: none !important;
    display: none !important;
    background: none !important;
    opacity: 0 !important;
}

/* White button with teal outline */
.wbp-form.wbp-flow button.wbp-flow__new-instance {
    background: #ffffff !important;
    background-image: none !important;
    color: #00858b !important;
    border: 1px solid #00858b !important;
    box-shadow: none !important;
}

.wbp-form.wbp-flow button.wbp-flow__new-instance:hover {
    background: #eaf7f6 !important;
    color: #00646e !important;
    border-color: #00646e !important;
}

/* Taller personal message textarea */
.wbp-form.wbp-flow textarea[name="your-message"] {
    min-height: 160px !important;
    height: 160px !important;
    line-height: 1.55 !important;
    resize: vertical;
}

/* Waberry — Retry button: override CMSMasters theme */

.wbp-form.wbp-flow .wbp-flow__retry button {
    position: relative !important;
    background: #ffffff !important;
    background-image: none !important;
    color: #b42318 !important;
    border: 1px solid #b42318 !important;
    border-radius: 7px !important;
    box-shadow: none !important;
    padding: 12px 18px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
}

.wbp-form.wbp-flow .wbp-flow__retry button::before,
.wbp-form.wbp-flow .wbp-flow__retry button::after {
    content: none !important;
    display: none !important;
}

.wbp-form.wbp-flow .wbp-flow__retry button:hover {
    background: #fff1ef !important;
    color: #981b12 !important;
    border-color: #981b12 !important;
}
