:root{--divine-navy:#10182e;--divine-green:#2f8b38;--divine-red:#ef3b3a;--divine-border:#e6e8ec;--divine-muted:#70798b;--divine-bg:#f8f9fb;--divine-pink:#fff0f1;--divine-green-soft:#eef8ee;--divine-blue-soft:#eef5ff;--divine-radius:22px;--divine-shadow:0 14px 34px rgba(16,24,46,.07)}
.divine-booking-app{font-family:inherit;color:var(--divine-navy);max-width:1180px;margin:0 auto;padding:8px 0 42px}.divine-booking-app *{box-sizing:border-box}.divine-booking-head h1{font-size:clamp(34px,4vw,52px);line-height:1.05;margin:0 0 24px;font-weight:800;letter-spacing:-.03em}.divine-steps{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:12px;margin:0 0 34px}.divine-steps i{height:3px;background:#e5e7eb;border-radius:20px}.divine-step{border:0;background:transparent;padding:0;display:flex;align-items:center;gap:9px;color:#9ca3af;font:inherit;cursor:pointer}.divine-step span{width:30px;height:30px;border-radius:50%;background:#e9ebef;display:grid;place-items:center;font-weight:800;font-size:13px}.divine-step strong{font-size:14px;white-space:nowrap}.divine-step.active{color:var(--divine-navy)}.divine-step.active span{background:var(--divine-green);color:#fff;box-shadow:0 5px 14px rgba(47,139,56,.2)}.divine-step.done{color:var(--divine-green)}.divine-step.done span{background:var(--divine-green);color:#fff}.divine-step:disabled{cursor:default}.divine-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:30px;align-items:start}.divine-panel{background:#fff;border:1px solid rgba(16,24,46,.07);border-radius:var(--divine-radius);padding:28px;box-shadow:var(--divine-shadow);margin-bottom:24px}.divine-panel h2,.divine-panel h3{margin:0;font-weight:800;letter-spacing:-.02em}.divine-panel h2{font-size:23px}.divine-panel h3{font-size:19px}.divine-panel-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.divine-wrap-row{align-items:flex-start}.divine-subcopy{margin:6px 0 0;color:var(--divine-muted);font-size:14px}.divine-pill{background:var(--divine-pink);color:var(--divine-red);padding:7px 13px;border-radius:999px;font-size:12px}.divine-any{font-size:12px;color:var(--divine-green);padding-top:4px}.divine-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.divine-service-card{appearance:none;display:grid;grid-template-columns:48px minmax(0,1fr) 22px;align-items:center;gap:12px;width:100%;text-align:left;background:#fff;border:1px solid var(--divine-border);border-radius:16px;padding:16px 18px;color:inherit;cursor:pointer;transition:.18s ease}.divine-service-card:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(16,24,46,.06)}.divine-service-card.selected{border:2px solid var(--divine-navy);background:#fbfcfd}.divine-service-icon{width:42px;height:42px;border-radius:12px;background:#f6f8fb;display:grid;place-items:center;font-weight:800}.divine-service-card:nth-child(odd) .divine-service-icon{background:var(--divine-pink);color:var(--divine-red)}.divine-service-card:nth-child(even) .divine-service-icon{background:var(--divine-green-soft);color:var(--divine-green)}.divine-service-copy strong{display:block;font-size:16px}.divine-service-copy span{display:block;color:var(--divine-muted);font-size:12px;margin-top:4px;line-height:1.35}.divine-radio{width:18px;height:18px;border-radius:50%;border:1px solid #cad0d8;position:relative}.divine-service-card.selected .divine-radio:after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--divine-navy)}.divine-action-row{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:10px 0 22px}.divine-action-row-right{justify-content:flex-end}.divine-btn{appearance:none;border:0;border-radius:12px;padding:15px 22px;font:inherit;font-weight:700;cursor:pointer;transition:.18s ease;display:inline-flex;align-items:center;justify-content:center;gap:9px;box-shadow:0 5px 0 rgba(16,24,46,.12)}.divine-btn:hover:not(:disabled){transform:translateY(-1px)}.divine-btn:disabled{opacity:.4;cursor:not-allowed}.divine-btn-dark{background:var(--divine-navy);color:#fff}.divine-btn-green{background:var(--divine-green);color:#fff}.divine-btn-red{background:var(--divine-red);color:#fff}.divine-link-btn{appearance:none;border:0;background:transparent;color:#697386;font:inherit;cursor:pointer;padding:10px 0}.divine-staff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.divine-staff-card{appearance:none;background:#fff;border:1px solid var(--divine-border);border-radius:18px;padding:18px;color:inherit;text-align:left;cursor:pointer;position:relative;overflow:hidden;transition:.18s ease}.divine-staff-card:hover{transform:translateY(-1px);box-shadow:0 9px 22px rgba(16,24,46,.07)}.divine-staff-card.selected{border:2px solid var(--divine-green);background:linear-gradient(135deg,#fff 0%,#f0f8f0 100%)}.divine-staff-top{display:flex;gap:12px;align-items:center}.divine-staff-top img,.divine-avatar-placeholder{width:58px;height:58px;border-radius:15px;object-fit:cover;border:1px solid rgba(16,24,46,.08)}.divine-avatar-placeholder{display:grid;place-items:center;background:#f2f4f7;font-weight:800;font-size:22px}.divine-staff-name{min-width:0;flex:1}.divine-staff-name strong{display:block;font-size:17px}.divine-staff-name>span{display:block;color:var(--divine-red);font-size:12px;margin-top:3px}.divine-rating{color:#e7b418;font-size:12px;margin-top:5px}.divine-rating small{color:var(--divine-muted)}.divine-selected-badge{display:none;position:absolute;right:14px;top:12px;background:var(--divine-green);color:#fff;padding:5px 9px;border-radius:6px;font-size:10px}.divine-staff-card.selected .divine-selected-badge{display:block}.divine-qualification{color:var(--divine-muted);font-size:12px;min-height:34px;margin:18px 0 10px;line-height:1.45}.divine-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.divine-tag{font-size:10px;padding:5px 8px;border-radius:999px;background:#f3f4f6;color:#596274}.divine-tag:nth-child(3n){background:var(--divine-pink);color:#c45157}.divine-staff-select{display:block;text-align:center;background:var(--divine-navy);color:#fff;padding:11px 14px;border-radius:10px;font-size:13px}.divine-staff-card.selected .divine-staff-select{background:#fff;color:#566070;border:1px solid #dfe3e8}.divine-section-label{font-size:12px;color:var(--divine-muted);margin:4px 0 10px}.divine-format-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:24px}.divine-format-card{appearance:none;border:1px solid var(--divine-border);border-radius:15px;background:#fff;padding:18px;color:inherit;cursor:pointer;text-align:center}.divine-format-card.selected{background:var(--divine-navy);color:#fff;border-color:var(--divine-navy)}.divine-format-card strong,.divine-format-card small{display:block}.divine-format-card small{font-size:10px;color:var(--divine-muted);margin-top:5px}.divine-format-card.selected small{color:#d7dce6}.divine-format-icon{font-size:20px;display:block;margin-bottom:7px}.divine-schedule-grid{display:grid;grid-template-columns:1fr .9fr;gap:22px;align-items:start}.divine-calendar-wrap{border:1px solid #edf0f4;border-radius:16px;padding:16px;background:#fbfcfd}.divine-calendar-head{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;text-align:center;margin-bottom:14px}.divine-icon-btn{width:32px;height:32px;border:1px solid var(--divine-border);border-radius:8px;background:#fff;cursor:pointer;font-size:20px;color:#6b7280}.divine-calendar-weekdays,.divine-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.divine-calendar-weekdays{margin-bottom:6px}.divine-calendar-weekdays span{text-align:center;font-size:9px;color:#98a0ad}.divine-calendar-day{aspect-ratio:1/1;border:0;background:transparent;border-radius:9px;cursor:pointer;color:#40485a;font:inherit;font-size:12px}.divine-calendar-day:hover:not(:disabled){background:#eef2f6}.divine-calendar-day.selected{background:var(--divine-green);color:#fff;box-shadow:0 5px 10px rgba(47,139,56,.22)}.divine-calendar-day:disabled{color:#d8dde4;cursor:default}.divine-calendar-blank{aspect-ratio:1/1}.divine-time-wrap h3{font-size:14px;margin:4px 0 12px}.divine-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.divine-time{appearance:none;border:1px solid var(--divine-border);border-radius:10px;background:#fff;color:#4e5666;padding:11px 8px;cursor:pointer;font:inherit;font-size:12px;text-align:center}.divine-time.selected{border:2px solid var(--divine-red);background:var(--divine-pink);color:var(--divine-red)}.divine-session-note{font-size:10px;color:#9aa1ac;margin:12px 0 0}.divine-muted{color:var(--divine-muted);font-size:13px}.divine-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.divine-field{display:flex;flex-direction:column;gap:7px}.divine-field.full{grid-column:1/-1}.divine-field label{font-size:12px;color:#4f5869;font-weight:700}.divine-field input,.divine-field textarea,.divine-field select{width:100%;border:1px solid var(--divine-border);border-radius:11px;padding:12px 13px;background:#fff;color:var(--divine-navy);font:inherit;font-size:14px}.divine-field input:focus,.divine-field textarea:focus{outline:2px solid rgba(47,139,56,.15);border-color:var(--divine-green)}.divine-summary{position:sticky;top:105px;padding:22px}.divine-summary h3{padding-bottom:16px;border-bottom:1px solid #edf0f3;margin-bottom:4px}.divine-summary-item{display:grid;grid-template-columns:38px 1fr;gap:10px;padding:13px 0;align-items:start}.divine-summary-item small,.divine-student-summary small{display:block;color:#9aa1ac;font-size:10px}.divine-summary-item strong,.divine-student-summary strong{display:block;font-size:13px;margin-top:2px}.divine-summary-item span:not(.divine-summary-icon):not(.divine-summary-avatar){display:block;color:var(--divine-muted);font-size:11px;margin-top:2px}.divine-summary-icon,.divine-summary-avatar{width:34px;height:34px;border-radius:9px;background:#f3f4f6;display:grid;place-items:center;font-size:14px}.divine-summary-icon-green{background:var(--divine-green-soft);color:var(--divine-green)}.divine-summary-icon-blue{background:var(--divine-blue-soft);color:#3977e8}.divine-summary-avatar img{width:34px;height:34px;border-radius:9px;object-fit:cover}.divine-student-summary{background:#f8f9fb;border:1px solid #e8ebef;border-radius:11px;padding:12px;margin:8px 0 16px}.divine-summary-pricing{border-top:1px dashed #dfe3e8;padding-top:12px}.divine-summary-pricing>div{display:flex;justify-content:space-between;gap:12px;color:#6e7684;font-size:12px;padding:6px 0}.divine-summary-pricing .total{border-top:1px solid #eef0f2;margin-top:6px;padding-top:12px;color:var(--divine-navy);font-size:15px}.divine-summary .divine-btn{width:100%;margin-top:14px}.divine-review-title{text-align:left;margin:0 0 24px}.divine-review-title h2{font-size:36px;margin:0}.divine-review-title p{color:var(--divine-muted);margin:7px 0 0}.divine-review-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:26px}.divine-review-box{border:2px solid var(--divine-green);background:linear-gradient(180deg,#eef9ef 0,#f5fbf5 100%)}.divine-review-heading{display:flex;gap:10px;align-items:center;margin-bottom:18px}.divine-check-icon{width:34px;height:34px;border-radius:9px;background:var(--divine-green);color:#fff;display:grid;place-items:center;font-weight:800}.divine-review-session{background:#fff;border:1px solid #e4e9e5;border-radius:15px;padding:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.divine-review-session small{display:block;color:#9ba3ad;font-size:10px}.divine-review-session strong{display:block;margin-top:4px;font-size:14px}.divine-review-session span{display:block;color:var(--divine-muted);font-size:11px;margin-top:3px}.divine-review-staff-line{display:flex;gap:8px;align-items:center}.divine-review-staff-line img{width:35px;height:35px;border-radius:9px;object-fit:cover}.divine-review-student{background:#fff;border:1px solid #e4e9e5;border-radius:15px;padding:18px;margin-top:18px}.divine-review-student .divine-panel-title-row{margin-bottom:12px}.divine-review-student .divine-panel-title-row h3{font-size:16px}.divine-review-student .divine-review-session{padding:0;border:0}.divine-edit-selection{margin-left:10px}.divine-next-card ol{list-style:none;padding:0;margin:14px 0 0}.divine-next-card li{display:grid;grid-template-columns:28px 1fr;gap:10px;margin:15px 0}.divine-next-card li>span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--divine-green);color:#fff;font-size:11px}.divine-next-card li:last-child>span{background:var(--divine-red)}.divine-next-card li strong{font-size:12px}.divine-next-card li p{font-size:10px;color:var(--divine-muted);line-height:1.5;margin:4px 0 0}.divine-payment-card>div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;font-size:12px}.divine-payment-total{border-top:1px solid #e7e9ed;margin-top:5px;padding-top:14px!important;font-size:16px!important}.divine-payment-total strong{color:var(--divine-red);font-size:20px}.divine-guarantee{background:var(--divine-green-soft);color:#397142;padding:10px;border-radius:9px;font-size:10px;line-height:1.4}.divine-review-actions{justify-content:flex-end}.divine-review-actions .divine-link-btn{margin-right:auto}.divine-message{padding:14px 16px;border-radius:10px;margin:12px 0;background:#fff1f1;color:#8a1f1f}.divine-message.success{background:#eef8ee;color:#1f6b28}.divine-confirmation-view{text-align:center;padding:28px 0 10px}.divine-confirm-icon{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;margin:0 auto 22px;background:var(--divine-green);color:#fff;font-size:42px;box-shadow:0 12px 26px rgba(47,139,56,.25)}.divine-confirmation-view>h2{font-size:48px;margin:0 0 10px;letter-spacing:-.03em}.divine-confirmation-view>p{color:var(--divine-muted);max-width:620px;margin:0 auto 28px}.divine-confirm-card{max-width:720px;margin:0 auto;border:2px solid var(--divine-green);background:linear-gradient(180deg,#edf9ee,#f7fcf7);border-radius:24px;padding:28px;text-align:left;box-shadow:var(--divine-shadow)}.divine-confirm-card>h3{text-align:center;font-size:21px;margin:0 0 22px}.divine-confirm-card>h3 span{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--divine-green);color:#fff;margin-right:7px}.divine-confirm-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.divine-confirm-details>div{background:#fff;border:1px solid #e5ece6;border-radius:13px;padding:14px;text-align:center}.divine-confirm-details small{display:block;color:#9ba3ad;font-size:9px}.divine-confirm-details strong{display:block;font-size:12px;margin-top:6px}.divine-confirm-details span{display:block;color:var(--divine-muted);font-size:10px;margin-top:5px}.divine-confirm-email{background:#e5f4e7;border:1px solid #cfe6d2;border-radius:12px;padding:16px;margin-top:18px}.divine-confirm-email strong{font-size:12px}.divine-confirm-email p{font-size:11px;color:#5f6b63;margin:6px 0 0}.divine-confirm-reference{text-align:center;color:#6f786f;font-size:11px;margin-top:16px}.divine-confirm-actions{display:flex;justify-content:center;margin-top:24px}
@media(max-width:960px){.divine-layout{grid-template-columns:1fr}.divine-summary{position:static;order:-1}.divine-review-grid{grid-template-columns:1fr}.divine-schedule-grid{grid-template-columns:1fr}.divine-confirm-details{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.divine-booking-app{padding-left:2px;padding-right:2px}.divine-booking-head h1{font-size:34px}.divine-steps{grid-template-columns:1fr;gap:7px}.divine-steps i{display:none}.divine-step strong{white-space:normal}.divine-panel{padding:20px;border-radius:18px}.divine-service-grid,.divine-staff-grid,.divine-format-grid,.divine-form-grid,.divine-review-session{grid-template-columns:1fr}.divine-field.full{grid-column:auto}.divine-action-row{align-items:stretch}.divine-action-row .divine-btn{width:100%}.divine-action-row:not(.divine-action-row-right){flex-direction:column-reverse}.divine-times{grid-template-columns:repeat(2,1fr)}.divine-review-title h2{font-size:30px}.divine-confirmation-view>h2{font-size:38px}.divine-confirm-card{padding:20px}.divine-confirm-details{grid-template-columns:1fr}.divine-summary{display:none}.divine-layout{display:block}}

/* v0.4.2 customer portal */
.divine-customer-portal{max-width:1100px;margin:40px auto;padding:0 20px;color:#10182e}
.divine-customer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}
.divine-customer-head h2{margin:0 0 6px;font-size:40px}
.divine-customer-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:24px;margin-bottom:18px;box-shadow:0 12px 30px rgba(16,24,46,.06)}
.divine-customer-card h3{margin-top:0}
.divine-customer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.divine-customer-grid>div{background:#f8f9fb;border-radius:12px;padding:12px}
.divine-customer-grid small{display:block;color:#697386;margin-bottom:4px}
.divine-customer-grid strong{display:block}
@media(max-width:767px){.divine-customer-head{flex-direction:column}.divine-customer-grid{grid-template-columns:1fr}.divine-customer-head h2{font-size:32px}}

/* v0.6 Staff Portal */
.divine-staff-portal{max-width:1120px;margin:40px auto;padding:0 20px;color:#10182e}
.divine-staff-portal__header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px}
.divine-staff-portal__header h2{font-size:40px;line-height:1.1;margin:4px 0 8px}
.divine-portal-kicker{font-weight:700;color:#2f8b38}
.divine-portal-logout{border:1px solid #dfe3e8;border-radius:10px;padding:10px 16px;text-decoration:none;color:#10182e;background:#fff}
.divine-staff-tabs{display:flex;gap:8px;margin:0 0 22px;padding:6px;background:#f2f4f7;border-radius:14px;width:max-content;max-width:100%}
.divine-staff-tabs a{padding:10px 16px;border-radius:10px;text-decoration:none;color:#596274;font-weight:700}
.divine-staff-tabs a.is-active{background:#10182e;color:#fff}
.divine-portal-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:24px;box-shadow:0 12px 30px rgba(16,24,46,.06)}
.divine-portal-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}
.divine-portal-card__head h3{margin:0 0 4px;font-size:24px}.divine-portal-card__head p{margin:0;color:#697386}
.divine-portal-notice{background:#eef8ee;border:1px solid #b9dfbe;color:#246c2b;padding:12px 16px;border-radius:12px;margin-bottom:18px}
.divine-staff-booking-list{display:grid;gap:16px}.divine-staff-booking{border:1px solid #e5e7eb;border-radius:16px;padding:20px}
.divine-staff-booking__top{display:flex;justify-content:space-between;gap:12px;color:#697386}.divine-booking-status{background:#eef8ee;color:#2f8b38;padding:5px 10px;border-radius:999px;font-weight:700;font-size:12px}
.divine-staff-booking h4{margin:14px 0 16px;font-size:20px}.divine-staff-booking__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.divine-staff-booking__grid>div{background:#f8f9fb;border-radius:12px;padding:12px}.divine-staff-booking__grid small{display:block;color:#697386;margin-bottom:4px}.divine-staff-booking__grid strong{display:block}
.divine-empty{padding:28px;text-align:center;background:#f8f9fb;border-radius:14px}.divine-empty p{color:#697386;margin-bottom:0}
.divine-availability-day{display:grid;grid-template-columns:140px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid #edf0f3;align-items:start}.divine-availability-windows{display:grid;gap:10px}.divine-availability-windows>div{display:flex;gap:10px;align-items:center}.divine-availability-windows input{padding:10px;border:1px solid #dfe3e8;border-radius:10px}
.divine-blocked-dates{display:grid;gap:8px;margin:24px 0}.divine-blocked-dates textarea{width:100%;border:1px solid #dfe3e8;border-radius:12px;padding:12px}.divine-blocked-dates small{color:#697386}
.divine-portal-button{display:inline-flex;align-items:center;justify-content:center;background:#2f8b38!important;color:#fff!important;text-decoration:none!important;border:0;border-radius:10px;padding:12px 18px;font-weight:700;cursor:pointer}
@media(max-width:767px){.divine-staff-portal__header{flex-direction:column}.divine-staff-portal__header h2{font-size:32px}.divine-staff-tabs{width:100%}.divine-staff-tabs a{flex:1;text-align:center}.divine-staff-booking__grid{grid-template-columns:1fr}.divine-availability-day{grid-template-columns:1fr}.divine-availability-windows>div{flex-wrap:wrap}}

/* v0.9.0 visual polish: media, consistent page width, centered review/confirmation */
.divine-booking-app{width:100%;max-width:1240px;padding:18px 24px 54px}
.divine-booking-head{max-width:1180px;margin:0 auto}
.divine-booking-head h1{font-size:clamp(38px,4vw,52px);margin-bottom:28px}
.divine-layout{max-width:1180px;margin:0 auto;transition:grid-template-columns .2s ease}
.divine-layout.is-full-width{grid-template-columns:minmax(0,1fr)}
.divine-layout.is-full-width .divine-main{width:100%;max-width:100%}

/* Service artwork / thumbnail */
.divine-service-card{min-height:118px;align-items:center}
.divine-service-media{width:96px;height:76px;border-radius:15px;overflow:hidden;flex:0 0 96px;background:#f6f7f9;border:1px solid #edf0f3}
.divine-service-media img{display:block;width:100%;height:100%;object-fit:cover}
.divine-service-icon{flex:0 0 auto}
.divine-service-copy{min-width:0}

/* Tutor photo gets a real visual slot */
.divine-staff-top>img,.divine-avatar-placeholder{width:76px!important;height:76px!important;min-width:76px;border-radius:18px!important;object-fit:cover}
.divine-avatar-placeholder{display:grid;place-items:center;background:#f3f5f8;border:1px solid #e4e8ee;font-size:26px;font-weight:800}
.divine-staff-card{padding:22px}
.divine-staff-name strong{font-size:18px}
.divine-staff-name span{margin-top:3px}

/* Review uses the full content width instead of leaving room for the hidden sidebar */
.divine-layout.is-full-width .divine-review-title{max-width:1000px;margin:0 auto 26px;text-align:left}
.divine-layout.is-full-width .divine-review-title h2{font-size:clamp(38px,4vw,48px);line-height:1.08;letter-spacing:-.03em}
.divine-layout.is-full-width .divine-review-grid{max-width:1000px;margin:0 auto;grid-template-columns:minmax(0,1.45fr) minmax(290px,.75fr);gap:28px}
.divine-layout.is-full-width .divine-review-actions{max-width:1000px;margin:22px auto 0}
.divine-review-staff-line img{width:48px;height:48px;border-radius:12px}

/* Confirmation is intentionally centered and independent of the normal booking sidebar */
.divine-layout.is-full-width .divine-confirmation-view{width:100%;max-width:980px;margin:0 auto;padding:40px 20px 20px;text-align:center}
.divine-confirmation-view>h2{font-size:clamp(42px,5vw,56px);line-height:1.05}
.divine-confirmation-view>p{font-size:16px;line-height:1.6}
.divine-confirm-card{width:min(100%,820px);max-width:none;margin:0 auto;padding:32px}
.divine-confirm-details>div{min-height:112px;display:flex;flex-direction:column;justify-content:center}
.divine-confirm-actions{width:100%;justify-content:center}

/* Make step headings feel like one system */
.divine-panel h2,.divine-review-heading h2,.divine-review-student h3,.divine-next-card h3,.divine-payment-card h3{letter-spacing:-.02em}

@media(max-width:960px){
  .divine-booking-app{padding-left:18px;padding-right:18px}
  .divine-layout.is-full-width .divine-review-grid{grid-template-columns:1fr;max-width:760px}
  .divine-layout.is-full-width .divine-review-title,.divine-layout.is-full-width .divine-review-actions{max-width:760px}
}
@media(max-width:680px){
  .divine-booking-app{padding-left:12px;padding-right:12px}
  .divine-service-card{min-height:0}
  .divine-service-media{width:72px;height:64px;flex-basis:72px}
  .divine-staff-top>img,.divine-avatar-placeholder{width:64px!important;height:64px!important;min-width:64px}
  .divine-layout.is-full-width .divine-review-title{text-align:center}
  .divine-layout.is-full-width .divine-confirmation-view{padding-left:0;padding-right:0}
}


/* v1.0.0 media containment + verified-email UX */
.divine-service-card{grid-template-columns:60px minmax(0,1fr) 22px!important;min-height:92px!important;padding:14px 16px!important}
.divine-service-media{width:56px!important;height:56px!important;min-width:56px!important;flex-basis:56px!important;border-radius:12px!important;align-self:center}
.divine-service-media img{width:100%!important;height:100%!important;max-width:100%!important;object-fit:cover!important;object-position:center!important}
.divine-service-copy{padding-left:2px;overflow:hidden}
.divine-service-copy strong,.divine-service-copy span{position:relative;z-index:1}
.divine-staff-top>img,.divine-avatar-placeholder{width:64px!important;height:64px!important;min-width:64px!important;max-width:64px!important;object-fit:cover!important;object-position:center!important;border-radius:14px!important}
.divine-summary-avatar img{width:34px!important;height:34px!important;max-width:34px!important;object-fit:cover!important}
.divine-review-staff-line img{width:44px!important;height:44px!important;max-width:44px!important;object-fit:cover!important;border-radius:11px!important}
.divine-email-row,.divine-email-code{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.divine-mini-btn{border:1px solid #d9dee6;background:#10182e;color:#fff;border-radius:10px;padding:11px 14px;font:inherit;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
.divine-mini-btn:disabled{opacity:.55;cursor:not-allowed}.divine-mini-btn-green{background:#2f8b38;border-color:#2f8b38}
.divine-email-status{font-size:11px;color:#697386;line-height:1.4}.divine-email-status.is-pending{color:#8a6810}.divine-email-status.is-verified{color:#24722c;font-weight:700}
.divine-email-code{margin-top:2px}.divine-email-code input{letter-spacing:.12em;font-weight:700}
.divine-hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
@media(max-width:680px){.divine-service-card{grid-template-columns:52px minmax(0,1fr) 20px!important}.divine-service-media{width:48px!important;height:48px!important;min-width:48px!important;flex-basis:48px!important}.divine-email-row,.divine-email-code{grid-template-columns:1fr}.divine-mini-btn{width:100%}}

/* v1.1.1 confirmation account action */
.divine-confirm-actions{gap:12px;flex-wrap:wrap}
.divine-btn-outline{background:#fff;color:var(--divine-navy);border:1px solid var(--divine-border);text-decoration:none}
.divine-btn-outline:hover{border-color:var(--divine-green);color:var(--divine-green)}
.divine-manage-booking{min-width:170px}


/* v1.3 payments */
.divine-payment-choose{margin-top:18px;padding-top:16px;border-top:1px solid #e8ebef}.divine-payment-choose h4{margin:0 0 10px}.divine-payment-methods{display:grid;gap:10px}.divine-payment-option{display:grid;grid-template-columns:18px 34px 1fr;align-items:center;gap:10px;padding:12px;border:1px solid #dfe4ea;border-radius:12px;background:#fff;cursor:pointer;margin:0}.divine-payment-option input{width:18px;height:18px;margin:0;align-self:center}.divine-payment-option-icon{width:34px;height:34px;border-radius:9px;background:#eef7ef;color:#2f8b38;display:grid;place-items:center;font-weight:700}.divine-payment-option strong,.divine-payment-option small{display:block}.divine-payment-option small{margin-top:3px;color:#6b7485;line-height:1.3}.divine-payment-option:has(input:checked){border-color:#2f8b38;background:#f3fbf4;box-shadow:0 0 0 1px #2f8b38 inset}.divine-payment-warning{padding:10px;background:#fff4e5;border-radius:8px}

.divine-confirm-bank{margin-top:16px;text-align:left;padding:18px;border:1px solid #cfe6d2;background:#f1f8f2;border-radius:12px}.divine-confirm-bank h4{margin:0 0 8px}

/* v1.4.1: hidden verification controls must stay hidden even when grid rules apply. */
#divine-booking-app [hidden]{display:none!important}

.divine-coupon-box{margin:16px 0;padding:14px;border:1px solid #e4e8ec;border-radius:12px;background:#fafbfc}.divine-coupon-box h4{margin:0 0 8px}.divine-coupon-row{display:flex;gap:8px}.divine-coupon-row input{min-width:0;flex:1;padding:10px 12px;border:1px solid #d6dbe2;border-radius:9px}.divine-coupon-row button{border:0;border-radius:9px;padding:0 15px;background:#101a35;color:#fff;font-weight:700}.divine-coupon-box small{display:block;margin-top:7px}.divine-coupon-box small.is-success{color:#238636}.divine-coupon-box small.is-error{color:#c62828}#divine-discount-row{display:flex;justify-content:space-between;margin-top:10px;color:#238636}
