/* ===== customer-provisioning ===== */
.modal:has(.invite-delivery--poster){width:560px;overflow:hidden;display:flex;flex-direction:column}
.modal:has(.invite-delivery--poster) .modal-body{min-height:0;overflow:auto;padding:16px 18px}
.modal:has(.invite-delivery--poster) .modal-footer{flex:0 0 auto;padding:12px 18px 16px;border-top:1px solid var(--line);background:#fff}
.invite-delivery{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:16px;align-items:start}
.invite-delivery-copy.flow-success{grid-column:1!important;align-self:start;height:max-content;max-width:none;margin:0;padding:4px 0}
.invite-delivery-copy .flow-success-mark{width:40px;height:40px;margin-bottom:10px;border-radius:13px;font-size:17px}
.invite-delivery-copy h3{font-size:18px}.invite-delivery-copy>p{margin:6px 0 11px}
.invite-delivery-copy .delivery-card{margin:11px 0 9px}
.invite-delivery-copy .delivery-card>div{grid-template-columns:72px minmax(0,1fr);gap:8px;min-height:0;height:auto;padding:9px 10px;align-items:start}
.invite-delivery-copy .delivery-card strong{word-break:break-all;line-height:1.5}
.invite-template-note{margin-top:9px;padding:10px 11px;border:1px solid #ddcbb7;border-radius:13px;background:#f3ebe1;display:grid;gap:4px}
.invite-template-note strong{font:500 11px/1.3 Georgia,"Songti SC",serif;color:#4b2f1e}.invite-template-note span{font-size:8px;line-height:1.55;color:#817166}
.invite-poster-preview{position:relative;width:210px;margin:0;padding:9px;border:1px solid #d8c4ac;border-radius:19px;background:#eee4d7;box-shadow:0 12px 30px rgba(75,47,30,.11);overflow:hidden}
.invite-poster-preview:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:#b8945f}
.invite-poster-preview img{display:block;width:100%;aspect-ratio:3/4;object-fit:contain;border-radius:12px;background:#f7f2ea;box-shadow:0 5px 15px rgba(75,47,30,.09)}
.invite-poster-preview figcaption{padding:8px 2px 0;text-align:center;font-size:7px;letter-spacing:.07em;color:#78685b}
.invite-poster-loading{aspect-ratio:3/4;border-radius:12px;background:#f7f2ea;display:grid;place-content:center;justify-items:center;gap:8px;color:#817166;font-size:8px}
.invite-poster-loading i{width:25px;height:25px;border:2px solid #ddcbb7;border-top-color:#624027;border-radius:50%;animation:invitePosterSpin .8s linear infinite}
.invite-download-link{display:inline-grid;place-items:center;text-decoration:none}.invite-download-link.is-disabled{pointer-events:none;opacity:.55}
@keyframes invitePosterSpin{to{transform:rotate(360deg)}}
.customer-flow-drawer{width:min(860px,94vw);background:#fbfaf7}
.customer-flow-body{padding:0;display:grid;grid-template-columns:180px minmax(0,1fr);min-height:0}
.flow-steps{list-style:none;margin:0;padding:22px 15px;background:#f1ebe4;border-right:1px solid var(--line);display:grid;align-content:start;gap:7px}
.flow-steps li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:8px;align-items:center;min-height:42px;padding:7px 8px;border-radius:12px;color:#96887b}
.flow-steps li i{width:26px;height:26px;border:1px solid #d9cfc5;border-radius:9px;background:#fff;display:grid;place-items:center;font:600 9px/1 Georgia,serif;font-style:normal}
.flow-steps li span{font-size:9px}.flow-steps li.active{background:#fff;color:var(--accent);box-shadow:0 5px 18px rgba(63,42,24,.06)}
.flow-steps li.active i{background:var(--accent);border-color:var(--accent);color:#fff}.flow-steps li.done i{background:#edf4eb;border-color:#d7e4d4;color:var(--green)}
.flow-panel{min-width:0;padding:24px 26px 28px;overflow:auto}.personal-flow-panel{grid-column:1/-1}
.flow-section{max-width:620px}.flow-kicker{display:block;font-size:7px;letter-spacing:.15em;color:#a37f5c;text-transform:uppercase}
.flow-section h3,.flow-success h3{margin:7px 0 0;font:500 22px/1.25 Georgia,"Songti SC",serif;color:var(--ink)}
.flow-section>p,.flow-success>p{margin:8px 0 20px;font-size:9px;line-height:1.7;color:var(--muted)}
.flow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.flow-grid .field{min-width:0}
.flow-label{font-size:8px;color:#7e7063}.flow-field.has-error input,.flow-field.has-error select,.flow-field.has-error textarea{border-color:var(--red);box-shadow:0 0 0 3px rgba(166,95,85,.08)}
.flow-error{display:block;font-size:8px;line-height:1.45;color:var(--red)}
.flow-alert{padding:11px 12px;border-radius:12px;font-size:9px;line-height:1.6;margin-bottom:13px}.flow-alert.error{background:#f6eae8;color:#94564e;border:1px solid #ecd3cf}
.flow-permissions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:7px}
.flow-review{display:grid;gap:10px;margin:4px 0 16px}.flow-review article{padding:14px 15px;border:1px solid var(--line);border-radius:15px;background:#fffdfa;display:grid;grid-template-columns:115px minmax(0,1fr);gap:5px 14px;align-items:start}
.flow-review article>span{grid-row:1/3;font-size:8px;color:var(--muted);padding-top:2px}.flow-review article strong{font-size:11px}.flow-review article p{margin:0;font-size:8px;line-height:1.6;color:var(--muted)}
.customer-flow-footer{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:15px;border-top:1px solid var(--line);background:#fbfaf7}.customer-flow-footer:has(>button:only-child){grid-template-columns:1fr}
.flow-success{grid-column:1/-1;max-width:640px;margin:0 auto;padding:34px 22px;text-align:left}.flow-success-mark{width:50px;height:50px;border-radius:17px;background:#edf4eb;color:var(--green);display:grid;place-items:center;font:600 22px/1 Georgia,serif;margin-bottom:17px}
.delivery-card{margin:19px 0 13px;border:1px solid var(--line);border-radius:17px;background:#fff;overflow:hidden}.delivery-card>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:12px 14px;border-top:1px solid var(--line2)}.delivery-card>div:first-child{border-top:0}.delivery-card span{font-size:8px;color:var(--muted)}.delivery-card strong{font-size:10px;overflow-wrap:anywhere}
.flow-success-actions{display:flex;gap:8px;margin:12px 0}.flow-success-actions .btn{min-width:130px}
.membership-preview{margin-top:14px;padding:14px 15px;border:1px solid #e4d6c7;border-radius:16px;background:#f8f2eb;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(100px,.7fr) 24px minmax(100px,.7fr);gap:12px;align-items:center}.membership-preview>span{grid-column:1/-1;font-size:8px;color:var(--muted)}.membership-preview>strong{font-size:11px}.membership-preview p{margin:0 0 4px;font-size:8px;color:var(--muted)}.membership-preview b{font-size:10px}.membership-preview i{font-style:normal;text-align:center;color:var(--gold)}
.delivery-pill{display:inline-flex!important;width:max-content;margin-top:6px!important;padding:4px 7px;border-radius:999px;background:#f7eee2;color:#987042!important;font-size:7px!important}.delivery-pill.delivered{background:#edf0f5;color:#5f7893!important}.delivery-pill.first_login{background:#edf4eb;color:#5f7d5d!important}
.provisioning-summary{display:grid;gap:4px;margin:0 0 12px;padding:12px 13px;border:1px solid #e3d5c6;border-radius:14px;background:#f6f0e9}.provisioning-summary span{font-size:7px;letter-spacing:.12em;color:#a17b57}.provisioning-summary strong{font-size:11px}.provisioning-summary small{font-size:8px;color:var(--muted)}
.account-access-guide{grid-column:1/-1}.setting-row small{display:block;margin-top:5px;color:var(--muted);font-size:8px;line-height:1.55}
.btn:disabled{cursor:not-allowed;opacity:.55}
@media(max-width:760px){.customer-flow-body{grid-template-columns:1fr}.flow-steps{grid-template-columns:repeat(5,minmax(0,1fr));border-right:0;border-bottom:1px solid var(--line);padding:10px;gap:4px}.flow-steps li{grid-template-columns:1fr;justify-items:center;text-align:center;padding:5px 2px}.flow-steps li span{font-size:7px}.flow-panel{padding:19px 16px 24px}.flow-grid,.flow-permissions{grid-template-columns:1fr}.flow-review article{grid-template-columns:1fr}.flow-review article>span{grid-row:auto}.membership-preview{grid-template-columns:1fr 20px 1fr}.membership-preview>strong{grid-column:1/-1}.customer-flow-footer{padding:10px 14px 16px}}
@media(prefers-reduced-motion:reduce){.customer-flow-drawer,.drawer-backdrop{transition:none!important}}
@media(max-width:760px){.modal:has(.invite-delivery--poster){width:min(520px,94vw)}.invite-delivery{grid-template-columns:1fr}.invite-poster-preview{width:210px;justify-self:center}.invite-delivery-copy.flow-success{grid-column:1!important}}
@media(prefers-reduced-motion:reduce){.invite-poster-loading i{animation:none}}
