.wpb-box{--wpb-primary:#d97706;--wpb-primary-dark:#b45309;--wpb-text:#1f2937;--wpb-muted:#6b7280;--wpb-border:#e5e7eb;--wpb-bg:#fff;--wpb-field-bg:#f8fafc;--wpb-button-text:#fff;--wpb-radius:20px;--wpb-width:820px;box-sizing:border-box;max-width:var(--wpb-width);margin:25px auto;padding:32px;border:1px solid var(--wpb-border);border-radius:var(--wpb-radius);background:var(--wpb-bg);box-shadow:0 12px 40px rgba(15,23,42,.08);font-family:inherit;color:var(--wpb-text)}
.wpb-box *{box-sizing:border-box}.wpb-header{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;margin-bottom:26px}.wpb-eyebrow{display:block;font-size:12px;font-weight:800;letter-spacing:.14em;color:var(--wpb-primary);margin-bottom:7px}.wpb-header h3{margin:0 0 8px;font-size:30px;line-height:1.15;color:var(--wpb-text)}.wpb-description{font-size:14px;color:var(--wpb-muted);line-height:1.6}.wpb-description p{margin:0}.wpb-price{min-width:145px;text-align:right;display:flex;flex-direction:column}.wpb-price small,.wpb-price span{color:var(--wpb-muted);font-size:12px}.wpb-price strong{font-size:25px;line-height:1.2;color:var(--wpb-text)}
.wpb-fields{display:grid;grid-template-columns:1fr 1fr 180px;gap:14px;padding:20px;border-radius:16px;background:var(--wpb-field-bg);border:1px solid var(--wpb-border)}.wpb-field{display:block;font-size:13px;font-weight:700;color:var(--wpb-text)}.wpb-field>span{display:block;margin:0 0 7px}.wpb-input-wrap{position:relative}.wpb-input-wrap .wpb-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);font-size:15px;pointer-events:none}.wpb-box input,.wpb-box select{width:100%;height:48px;padding:0 13px;border:1px solid var(--wpb-border);border-radius:10px;background:#fff;color:var(--wpb-text);font:inherit;outline:none;transition:border-color .2s,box-shadow .2s}.wpb-input-wrap input,.wpb-input-wrap select{padding-left:40px}.wpb-box input:focus,.wpb-box select:focus{border-color:var(--wpb-primary);box-shadow:0 0 0 3px rgba(217,119,6,.12)}
.wpb-stepper{height:48px;display:grid;grid-template-columns:42px 1fr 42px;border:1px solid var(--wpb-border);border-radius:10px;background:#fff;overflow:hidden}.wpb-stepper button{border:0;background:#fff;font-size:22px;color:var(--wpb-primary);cursor:pointer}.wpb-stepper button:hover{background:#fff7ed}.wpb-stepper input{border:0!important;border-radius:0!important;text-align:center;padding:0!important;box-shadow:none!important}.wpb-summary{margin:18px 0;padding:18px 20px;border:1px solid var(--wpb-border);border-radius:14px;display:flex;justify-content:space-between;align-items:center;gap:15px}.wpb-summary span{display:block;color:var(--wpb-muted);font-size:12px}.wpb-summary strong{display:block;font-size:23px;margin-top:2px}.wpb-availability{text-align:right}.wpb-customer{padding-top:4px}.wpb-customer h4{font-size:17px;margin:0 0 14px}.wpb-customer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.wpb-submit{width:100%;height:52px;margin-top:18px;border:0;border-radius:11px;background:var(--wpb-primary);color:var(--wpb-button-text);font:inherit;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;transition:transform .15s,background .2s,opacity .2s}.wpb-submit:hover{background:var(--wpb-primary-dark);transform:translateY(-1px)}.wpb-submit:disabled{opacity:.65;cursor:not-allowed;transform:none}.wpb-arrow{font-size:20px}.wpb-secure{text-align:center;color:#9ca3af;font-size:11px;margin-top:10px}.wpb-msg{min-height:20px;margin:13px 0 0;font-size:13px;font-weight:600}.wpb-msg.is-success{color:#15803d}.wpb-msg.is-error{color:#b91c1c}.wpb-error{color:#b91c1c}
.wpb-layout-compact{padding:22px;border-radius:14px}.wpb-layout-compact .wpb-header{align-items:center;margin-bottom:18px}.wpb-layout-compact .wpb-description,.wpb-layout-compact .wpb-customer,.wpb-layout-compact .wpb-secure{display:none}.wpb-layout-compact .wpb-fields{grid-template-columns:1.2fr 1.2fr .8fr 150px;align-items:end;padding:0;border:0;background:transparent}.wpb-layout-compact .wpb-summary{margin:14px 0 0}.wpb-layout-compact .wpb-submit{margin-top:12px}
@media (max-width:760px){.wpb-box{padding:22px 18px;border-radius:16px}.wpb-header{display:block}.wpb-header h3{font-size:25px}.wpb-price{margin-top:12px;text-align:left}.wpb-fields,.wpb-layout-compact .wpb-fields{grid-template-columns:1fr;padding:16px}.wpb-summary{display:block}.wpb-availability{text-align:left;margin-top:8px}.wpb-customer-grid{grid-template-columns:1fr}.wpb-layout-compact .wpb-customer{display:none}}


/* WP Booking MVP 0.3.2 - layout fixes */
.wpb-box{width:100%;margin-left:auto!important;margin-right:auto!important;min-width:0;overflow:hidden}
.wpb-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(150px,180px)}
.wpb-field,.wpb-field-people{min-width:0;width:100%}
.wpb-stepper{width:100%;min-width:0;grid-template-columns:42px minmax(0,1fr) 42px}
.wpb-stepper input{min-width:0!important;width:100%!important}
.wpb-summary{min-width:0}
.wpb-total-wrap{min-width:0}
.wpb-summary .wpb-total-wrap strong{display:inline-flex!important;align-items:baseline;gap:0;white-space:nowrap;line-height:1.2}
.wpb-summary .wpb-total{display:inline!important;white-space:nowrap}
.wpb-summary .wpb-currency{display:inline!important;margin-left:4px;white-space:nowrap}
.wpb-summary .wpb-availability{flex:0 1 auto;min-width:0}
@media (max-width:900px){.wpb-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(135px,1fr)}}
@media (max-width:760px){.wpb-fields,.wpb-layout-compact .wpb-fields{grid-template-columns:minmax(0,1fr)}.wpb-summary .wpb-total-wrap strong{font-size:22px}}

/* WP Booking MVP 0.3.3 - theme isolation fixes */
.wpb-box .wpb-stepper{
    display:flex !important;
    align-items:stretch !important;
    width:100% !important;
    height:48px !important;
    min-height:48px !important;
    overflow:hidden !important;
}
.wpb-box .wpb-stepper button{
    flex:0 0 44px !important;
    width:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    height:48px !important;
    min-height:48px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
    border:0 !important;
    box-shadow:none !important;
}
.wpb-box .wpb-stepper input.wpb-people{
    flex:1 1 auto !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:48px !important;
    min-height:48px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    text-align:center !important;
    text-align-last:center !important;
    font-size:16px !important;
    font-weight:700 !important;
    line-height:48px !important;
    color:var(--wpb-text) !important;
    background:#fff !important;
    box-shadow:none !important;
    -webkit-appearance:textfield !important;
    appearance:textfield !important;
}
.wpb-box .wpb-stepper input.wpb-people::-webkit-inner-spin-button,
.wpb-box .wpb-stepper input.wpb-people::-webkit-outer-spin-button{
    -webkit-appearance:none !important;
    margin:0 !important;
}
.wpb-box .wpb-summary .wpb-total-wrap{
    flex:0 0 auto !important;
    min-width:0 !important;
}
.wpb-box .wpb-summary .wpb-total-wrap > span:first-child{
    display:block !important;
    margin:0 0 3px !important;
    color:var(--wpb-muted) !important;
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.3 !important;
}
.wpb-box .wpb-summary .wpb-total-wrap strong{
    display:inline-flex !important;
    align-items:baseline !important;
    gap:0 !important;
    white-space:nowrap !important;
    margin:0 !important;
    padding:0 !important;
    color:var(--wpb-primary) !important;
    font-size:30px !important;
    font-weight:800 !important;
    line-height:1.15 !important;
    letter-spacing:normal !important;
}
.wpb-box .wpb-summary .wpb-total{
    display:inline !important;
    color:inherit !important;
    font-size:inherit !important;
    font-weight:inherit !important;
    line-height:inherit !important;
    white-space:nowrap !important;
    margin:0 !important;
    padding:0 !important;
}
.wpb-box .wpb-summary .wpb-currency{
    display:inline !important;
    color:inherit !important;
    font-size:.58em !important;
    font-weight:700 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    margin:0 0 0 5px !important;
    padding:0 !important;
}
.wpb-box .wpb-summary .wpb-availability{
    color:var(--wpb-muted) !important;
    font-size:13px !important;
    line-height:1.4 !important;
}
@media (max-width:760px){
    .wpb-box .wpb-summary .wpb-total-wrap strong{font-size:27px !important}
}
