/* Three-step booking dialog; existing request and verification handling is retained. */
.pooja-detail #app #poojaBookingDialog.bw-dialog{width:min(660px,calc(100% - 32px));max-height:calc(100dvh - 36px);overflow:hidden;background:white;border:0;border-radius:24px}
.bw-dialog[open]{display:flex;flex-direction:column}
.pooja-detail #app .bw-dialog .pd-dialog-bar{position:relative;flex:none;display:grid;grid-template-columns:1fr auto;gap:18px 20px;padding:24px 28px 20px;background:linear-gradient(120deg,#633a20,#a15a24);border:0;color:#fff7e9}
.bw-heading>span{font-size:10px;letter-spacing:1.6px;font-weight:600;color:#ffdc9e}
.pooja-detail #app .bw-heading h2{font-size:25px;margin:7px 0 5px;color:#fff9ed}
.bw-heading p{font-size:12px;margin:0;color:#f4d9b3}
.pooja-detail #app .bw-dialog .pd-dialog-bar>button{border-radius:50%;background:#ffffff1f;color:#fff;width:36px;height:36px;align-self:start;font-size:26px}
.bw-progress{grid-column:1/-1;list-style:none;display:flex;margin:0;padding:0;gap:0}
.bw-progress li{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;flex:1;color:#e9c6a0;font-size:11px}
.bw-progress li:before{content:'';position:absolute;top:17px;left:-32%;width:64%;height:1px;background:#ffffff40}
.bw-progress li:first-child:before{display:none}
.bw-progress li>span{position:relative;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#ffffff1f;font-size:14px;font-weight:600}
.bw-progress li strong{font-weight:500}
.bw-progress li[aria-current=step]{color:#fff}.bw-progress li[aria-current=step]>span{background:#ffdb71;color:#513014;box-shadow:0 0 0 3px #ffffff30}
.bw-progress li.is-complete>span{background:#fff2d6;color:#6e421d}
.pooja-detail #app .bw-dialog #booking{overflow:auto;overscroll-behavior:contain;min-height:0}
.pooja-detail #app .bw-dialog .booking-panel{padding:0;background:#fff}
.bw-dialog #requestForm{margin:0}
.bw-page{padding:20px 28px;outline:none}
.bw-page[hidden],.bw-dialog [hidden]{display:none!important}
.pooja-detail #app .bw-dialog .booking-step{margin:0;padding:0;border:0;min-width:0}
.pooja-detail #app .bw-dialog .booking-step legend{font-size:15px;margin:0 0 14px;padding:0;font-weight:600}
.pooja-detail #app .bw-dialog .booking-step legend>span{display:none}
.pooja-detail #app .bw-dialog .booking-step+.booking-step{margin-top:22px;padding-top:20px;border-top:1px solid #ede4d5}
.pooja-detail #app .bw-dialog .field{font-size:11px;gap:5px;margin:0}
.pooja-detail #app .bw-dialog .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pooja-detail #app .bw-dialog .full{grid-column:1/-1}
.pooja-detail #app .bw-dialog :is(input,textarea,select){border-color:#e2d8c8;background:#fffdf8;border-radius:9px;font-size:13px;padding:9px 11px;min-height:42px}
.pooja-detail #app .bw-dialog textarea{min-height:62px}
.bw-calendar{border:1px solid #e8dfd1;border-radius:16px;overflow:hidden;margin-bottom:16px}
.bw-calendar-head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fbf7ee;border-bottom:1px solid #ece3d3;font-size:15px}
.bw-calendar-head>div{display:flex;gap:8px}
.pooja-detail #app .bw-calendar-head button{background:transparent;color:#795438;border:0;width:32px;height:32px;min-height:32px;font-size:24px;padding:0;margin:0}
.bw-weekdays,.bw-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding:8px 12px}
.bw-weekdays{text-align:center;padding-bottom:0;font-size:10px;color:#9b8b76}
.pooja-detail #app .bw-days button{display:block;min-height:34px;height:34px;margin:0;padding:0;background:transparent;border:1px solid transparent;color:#5b4430;border-radius:9px;font-size:13px;font-weight:500;box-shadow:none}
.pooja-detail #app .bw-days button[aria-pressed=true]{background:#fff0bf;border-color:#dd9e29;color:#714412}
.pooja-detail #app .bw-days button:not(:disabled):hover{background:#fff6da}
.pooja-detail #app .bw-calendar button:disabled{opacity:.3;cursor:not-allowed}
.bw-footer{position:sticky;bottom:0;background:#fff;border-top:1px solid #eae0d1;padding:14px 28px 10px;z-index:2}
.bw-actions{display:flex;gap:12px}
.pooja-detail #app .bw-footer button{margin:0;border-radius:12px;min-height:46px;padding:12px 18px;font-size:14px;font-weight:600}
.pooja-detail #app .bw-footer .bw-next,.pooja-detail #app .bw-footer .book-submit{flex:1;background:linear-gradient(110deg,#f89a27,#ffda63);color:#442b16;border:0;width:auto}
.bw-help{display:flex;justify-content:center;align-items:center;min-height:32px;font-size:11px;color:#8a7458;text-decoration:none}
.bw-footer .error:empty{display:none}.bw-footer .error{font-size:11px;margin:0 0 8px}
.bw-page h3{font-size:18px;margin:0 0 6px}.bw-review-intro{font-size:12px;margin:0 0 16px;color:#8b765d}
.bw-review{display:grid;gap:0;background:#fbf8f0;border:1px solid #ece1cf;border-radius:14px;padding:4px 16px}
.bw-review>div{padding:11px 0;border-bottom:1px solid #ece1cf}.bw-review>div:last-child{border:0}
.bw-review dt{font-size:10px;color:#9b805d;margin-bottom:4px}.bw-review dd{margin:0;font-size:13px;line-height:1.6;overflow-wrap:anywhere;white-space:pre-line}
.pooja-detail #app .bw-dialog .consent{font-size:11px;line-height:1.6;margin:18px 0;gap:10px}
.pooja-detail #app .bw-dialog .consent input{width:18px;height:18px;flex:0 0 18px;min-height:0;padding:0}
.pooja-detail #app .bw-dialog .notice{font-size:11px;line-height:1.6;padding:12px;border-radius:10px;background:#fff7e0}
.pooja-detail #app .bw-dialog .otp-box{padding:12px;border-radius:10px}.bw-dialog .otp-box .status{font-size:10px}.bw-dialog .otp-box .small{font-size:10px}
@media(max-width:600px){.pooja-detail #app #poojaBookingDialog.bw-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:20px}.pooja-detail #app .bw-dialog .pd-dialog-bar{padding:18px 20px 16px;gap:16px}.pooja-detail #app .bw-heading h2{font-size:22px}.bw-page{padding:18px 20px}.bw-footer{padding:12px 20px 8px}.pooja-detail #app .bw-dialog .booking-panel{padding:0}.pooja-detail #app .bw-dialog :is(input,select,textarea){font-size:16px}.pooja-detail #app .bw-dialog .form-grid{gap:12px}.bw-calendar-head{padding:10px 12px}.bw-weekdays,.bw-days{padding-left:8px;padding-right:8px}.pooja-detail #app .bw-footer button{font-size:12px;padding:11px 13px}.bw-progress li{font-size:10px}.bw-review dd{font-size:12px}}
/* Keep the step action visible while only the current step scrolls. */
.pooja-detail #app .bw-dialog #booking{display:flex;flex-direction:column;overflow:hidden;flex:1}
.pooja-detail #app .bw-dialog .booking-panel{display:flex;flex-direction:column;min-height:0;flex:1}
.bw-dialog #requestForm{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}
.bw-dialog .bw-page{overflow:auto;overscroll-behavior:contain;min-height:0;flex:1}
.bw-dialog .bw-footer{position:relative;flex:none}
.pooja-detail #app .bw-dialog #booking>.panel:not(.booking-panel){overflow:auto;margin:0!important;padding:24px;border:0}

/* Native date/time fields need a full row on compact phones. */
@media(max-width:400px){
 .pooja-detail #app .bw-dialog .form-grid{grid-template-columns:minmax(0,1fr)}
 .pooja-detail #app .bw-dialog .full{grid-column:auto}
 .bw-heading{min-width:0;overflow-wrap:anywhere}
}
