.appointment-success-container{min-height:82vh;padding:105px 20px 64px;display:flex;justify-content:center;align-items:flex-start;background:linear-gradient(180deg,#f8fbff,#f3f7ff);animation:successFadeIn .45s ease-out}@keyframes successFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.appointment-success-container .success-content{width:100%;max-width:760px;background:#fff;border:1px solid rgba(30,58,138,.15);border-radius:22px;padding:44px 42px;text-align:left;box-shadow:0 20px 42px #0f172a14}.appointment-success-container .success-icon{width:76px;height:76px;margin:0 auto 18px;border-radius:999px;background:linear-gradient(135deg,#16a34a,#22c55e);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 10px 22px #16a34a47}.appointment-success-container .success-icon svg{width:44px;height:44px}.appointment-success-container h1{margin:0 0 12px;font-size:clamp(1.9rem,4.2vw,2.8rem);line-height:1.1;text-align:center;color:var(--primary)}.appointment-success-container .subtitle{margin:0 auto 26px;max-width:58ch;font-size:1.04rem;color:var(--text-gray);text-align:center;line-height:1.6}.appointment-success-container .subtitle.error{color:#991b1b}.appointment-success-container .info-card{background:#f8fbff;border:1px solid rgba(30,58,138,.14);border-radius:14px;padding:18px 18px 8px;margin-bottom:28px}.appointment-success-container .info-card h3{margin:0 0 10px;font-size:1.05rem;color:var(--primary)}.appointment-success-container .info-card ul{margin:0;padding:0;list-style:none}.appointment-success-container .info-card li{position:relative;margin-bottom:12px;padding-left:22px;color:var(--text-dark);font-size:.96rem;line-height:1.5}.appointment-success-container .info-card li:before{content:"";position:absolute;top:8px;left:0;width:8px;height:8px;border-radius:50%;background:#16a34a}.appointment-success-container .action-buttons{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.appointment-success-container .meet-link-card{background:#eef6ff;border:1px solid rgba(30,58,138,.2);border-radius:12px;padding:14px;margin:0 0 20px;text-align:center}.appointment-success-container .meet-link-card p{margin:0 0 10px;color:var(--text-dark);text-align:center}.appointment-success-container .success-btn{min-width:170px;padding:12px 18px;border-radius:12px;text-decoration:none;text-align:center;font-weight:600;transition:all .25s ease}.appointment-success-container .success-btn.primary{background:var(--primary-gradient);color:#fff;box-shadow:0 8px 18px #1e3a8a3d}.appointment-success-container .success-btn.primary:hover{transform:translateY(-1px);box-shadow:0 12px 20px #1e3a8a4d}.appointment-success-container .success-btn.secondary{background:#fff;border:1px solid rgba(30,58,138,.25);color:var(--text-dark)}.appointment-success-container .success-btn.secondary:hover{background:#f8fbff;border-color:#1e3a8a73}@media(max-width:768px){.appointment-success-container{padding:92px 14px 48px}.appointment-success-container .success-content{padding:30px 20px;border-radius:18px}.appointment-success-container .action-buttons{flex-direction:column;align-items:stretch}.appointment-success-container .success-btn{width:100%;min-width:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}#bkx-booking-portal.booking-page{padding:110px 0 72px}#bkx-booking-portal .booking-container{max-width:1180px;margin:0 auto;padding:0 28px;color:var(--text-dark)}#bkx-booking-portal .booking-header{max-width:760px;margin:0 auto 24px;text-align:center}#bkx-booking-portal .booking-header h1{font-size:clamp(2rem,4.6vw,3.1rem);line-height:1.08;margin-bottom:12px;color:var(--primary)}#bkx-booking-portal .booking-header p{font-size:1.05rem;color:var(--text-gray);margin:0 auto;text-align:center;max-width:60ch}#bkx-booking-portal .booking-alert{border-radius:12px;border:1px solid;padding:12px 14px;margin:0 auto 18px;max-width:980px;font-size:.95rem}#bkx-booking-portal .booking-alert.error{background:#fff2f2;border-color:#f2b8b8;color:#8a1f1f}#bkx-booking-portal .booking-layout{display:grid;grid-template-columns:280px 1fr;gap:20px;align-items:start}#bkx-booking-portal .booking-summary{position:sticky;top:98px}#bkx-booking-portal .summary-card{background:#fff;border:1px solid rgba(30,58,138,.14);border-radius:16px;padding:18px;box-shadow:0 12px 24px #0f172a0f}#bkx-booking-portal .summary-card h2{font-size:1.15rem;margin-bottom:12px;color:var(--primary)}#bkx-booking-portal .summary-steps{list-style:none;display:grid;gap:8px;margin:0 0 14px;padding:0}#bkx-booking-portal .summary-steps li{font-size:.92rem;color:var(--text-gray);padding:8px 10px;border-radius:10px;background:#f8fbff}#bkx-booking-portal .summary-steps li.active{color:#19357f;border:1px solid rgba(30,58,138,.24);background:#eef3ff}#bkx-booking-portal .summary-steps li.done{color:#144d2c;background:#ecfdf3;border:1px solid rgba(20,132,75,.2)}#bkx-booking-portal .summary-details{display:grid;gap:10px}#bkx-booking-portal .summary-row{display:grid;gap:4px;padding-top:10px;border-top:1px dashed rgba(30,58,138,.16)}#bkx-booking-portal .summary-row span{font-size:.8rem;letter-spacing:.03em;color:var(--text-gray);text-transform:uppercase}#bkx-booking-portal .summary-row strong{font-size:.95rem;font-weight:700;color:var(--text-dark)}#bkx-booking-portal .booking-main{display:grid;gap:16px}#bkx-booking-portal .booking-panel{background:#fff;border:1px solid rgba(30,58,138,.14);border-radius:16px;padding:18px;box-shadow:0 10px 22px #0f172a0d;animation:fadeInUp .5s ease}#bkx-booking-portal .booking-panel h3{font-size:1.2rem;margin-bottom:14px;color:var(--text-dark)}#bkx-booking-portal .date-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}#bkx-booking-portal .date-card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 8px;border:1px solid rgba(30,58,138,.16);border-radius:12px;background:#fff;color:var(--text-gray);cursor:pointer;transition:.2s ease}#bkx-booking-portal .date-card:hover{border-color:#1e3a8a80;background:#f5f8ff}#bkx-booking-portal .date-card.active{background:var(--primary-gradient);color:#fff;border-color:transparent;box-shadow:0 10px 16px #1e3a8a40}#bkx-booking-portal .day-name{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600}#bkx-booking-portal .day-number{font-size:1.8rem;font-weight:800;line-height:1}#bkx-booking-portal .month-name{font-size:.84rem}#bkx-booking-portal .time-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px}#bkx-booking-portal .time-slot{padding:12px 10px;border:1px solid rgba(30,58,138,.16);border-radius:10px;background:#fff;color:var(--text-dark);font-weight:700;font-size:.94rem;text-align:center;cursor:pointer;transition:.2s ease}#bkx-booking-portal .time-slot:hover{background:#f5f8ff;border-color:#1e3a8a73}#bkx-booking-portal .time-slot.active{background:var(--primary-gradient);color:#fff;border-color:transparent}#bkx-booking-portal .form-section{display:none}#bkx-booking-portal .form-section.visible{display:block}#bkx-booking-portal .booking-form{display:grid;gap:14px}#bkx-booking-portal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}#bkx-booking-portal .booking-form input,#bkx-booking-portal .booking-form textarea{width:100%;padding:13px 14px;border-radius:10px;border:1px solid rgba(30,58,138,.16);background:#f9fbff;color:var(--text-dark);font-size:.96rem;font-family:inherit;outline:none;transition:.2s ease}#bkx-booking-portal .booking-form input:focus,#bkx-booking-portal .booking-form textarea:focus{border-color:#1e3a8a80;background:#fff;box-shadow:0 0 0 3px #2563eb1a}#bkx-booking-portal .email-verify-card{border:1px dashed rgba(30,58,138,.3);border-radius:10px;background:#f8fbff;padding:12px}#bkx-booking-portal .email-verify-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}#bkx-booking-portal .email-verify-top p{margin:0;font-size:.92rem;color:var(--text-dark)}#bkx-booking-portal .inline-verify-btn{border:none;border-radius:10px;background:var(--primary-gradient);color:#fff;font-size:.88rem;font-weight:700;padding:10px 14px;cursor:pointer}#bkx-booking-portal .inline-verify-btn:disabled{background:#94a3b8;cursor:not-allowed}#bkx-booking-portal .verify-code-row{margin-top:10px;display:grid;grid-template-columns:1fr auto;gap:10px}#bkx-booking-portal .email-verified-badge{border:1px solid rgba(22,163,74,.35);color:#14532d;background:#ecfdf3;border-radius:10px;padding:11px 12px;font-size:.9rem;font-weight:600}#bkx-booking-portal .verify-message{margin:0;color:#1e3a8a;font-size:.88rem}#bkx-booking-portal .verify-error{margin:0;color:#b91c1c;font-size:.88rem}#bkx-booking-portal .confirm-btn{border:none;border-radius:12px;background:var(--primary-gradient);color:#fff;font-size:1rem;font-weight:700;padding:14px;cursor:pointer;transition:.2s ease;margin-top:4px}#bkx-booking-portal .confirm-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 16px #1e3a8a3d}#bkx-booking-portal .confirm-btn:disabled{background:#94a3b8;cursor:not-allowed}#bkx-booking-portal .form-note{margin:2px 0 0;font-size:.9rem;color:var(--text-gray)}#bkx-booking-portal .no-slots{margin:0;padding:24px 12px;text-align:center;color:var(--text-gray);background:#f8fbff;border:1px dashed rgba(30,58,138,.25);border-radius:10px}#bkx-booking-portal .booking-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;height:62vh;color:var(--text-dark);padding:0 20px}#bkx-booking-portal .loader-card{display:grid;justify-items:center;gap:8px;background:#fff;border:1px solid rgba(30,58,138,.16);border-radius:14px;box-shadow:0 12px 22px #0f172a12;padding:24px 30px}#bkx-booking-portal .spinner{width:46px;height:46px;border:4px solid var(--border-light);border-top:4px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:6px}#bkx-booking-portal .loader-title{margin:0;font-size:1rem;font-weight:700;color:var(--text-dark);text-align:center}#bkx-booking-portal .loader-subtitle{margin:0;font-size:.9rem;color:var(--text-gray);text-align:center}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:980px){#bkx-booking-portal.booking-page{padding-top:95px}#bkx-booking-portal .booking-layout{grid-template-columns:1fr}#bkx-booking-portal .booking-summary{position:static}#bkx-booking-portal .summary-card{padding:14px}}@media(max-width:768px){#bkx-booking-portal .booking-container{padding:0 14px}#bkx-booking-portal .booking-header h1{font-size:2rem}#bkx-booking-portal .booking-panel{padding:14px}#bkx-booking-portal .date-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#bkx-booking-portal .time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#bkx-booking-portal .form-row,#bkx-booking-portal .verify-code-row{grid-template-columns:1fr}}
