.digiai-chat{position:fixed;bottom:1.5rem;right:1.5rem;z-index:95;display:flex;flex-direction:column;align-items:flex-end;gap:.75rem}.chat-open-btn{width:58px;height:58px;border-radius:50%;background:var(--grad-primary);border:none;color:#000;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 28px rgba(0,212,255,.45);transition:var(--transition);position:relative;flex-shrink:0}.chat-open-btn:hover{transform:scale(1.08);box-shadow:0 12px 36px rgba(0,212,255,.6)}.digiai-chat.open .chat-icon{display:none}.digiai-chat.open .close-icon{display:block!important}.chat-badge{position:absolute;top:-4px;right:-4px;width:22px;height:22px;background:var(--clr-danger);border:2px solid var(--clr-bg);border-radius:50%;font-size:.7rem;font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center;animation:glowPulse 2s infinite}.chat-panel{position:absolute;bottom:70px;right:0;width:360px;max-height:540px;background:#0d1e35;border:1px solid var(--clr-border);border-radius:var(--radius-xl);box-shadow:0 24px 80px rgba(0,0,0,.5) , 0 0 0 1px rgba(0,212,255,.1);display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(16px) scale(.96);pointer-events:none;transition:opacity .3s ease , transform .3s cubic-bezier(.34,1.56,.64,1);transform-origin:bottom right}.digiai-chat.open .chat-panel{opacity:1;transform:translateY(0) scale(1);pointer-events:all}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:linear-gradient(135deg,rgba(0,212,255,.08) 0%,rgba(124,58,237,.08) 100%);border-bottom:1px solid var(--clr-border);flex-shrink:0}.chat-header__info{display:flex;align-items:center;gap:.75rem}.chat-header__avatar{width:38px;height:38px;border-radius:50%;background:var(--grad-primary);display:flex;align-items:center;justify-content:center;color:#000;flex-shrink:0}.chat-header__name{font-size:.9rem;font-weight:700;color:var(--clr-heading)}.chat-header__status{display:flex;align-items:center;gap:.375rem;font-size:.72rem;color:var(--clr-text-subtle)}.chat-status-dot{width:7px;height:7px;border-radius:50%;background:var(--clr-accent);animation:glowPulse 2s infinite;flex-shrink:0}.chat-close-btn{background:none;border:none;color:var(--clr-text-subtle);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);transition:var(--transition-fast)}.chat-close-btn:hover{color:var(--clr-text);background:var(--glass-bg)}.chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem;scroll-behavior:smooth}.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--clr-border);border-radius:4px}.chat-msg{display:flex;align-items:flex-start;gap:.5rem;opacity:0;transform:translateY(8px);transition:opacity .3s ease , transform .3s ease}.chat-msg.visible{opacity:1;transform:none}.chat-msg--user{flex-direction:row-reverse}.chat-msg__avatar{width:30px;height:30px;border-radius:50%;background:var(--grad-primary);display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;color:#000;flex-shrink:0}.chat-msg__bubble{max-width:78%;padding:.65rem .875rem;border-radius:var(--radius-md);font-size:.875rem;line-height:1.55}.chat-msg--bot .chat-msg__bubble{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--clr-text);border-top-left-radius:4px}.chat-msg--user .chat-msg__bubble{background:var(--clr-primary);color:#000;font-weight:500;border-top-right-radius:4px}.chat-quick-replies{display:flex;flex-wrap:wrap;gap:.4rem;padding:.25rem .25rem 0}.chat-quick-reply{padding:.375rem .75rem;font-size:.78rem;font-weight:500;color:var(--clr-primary);background:var(--clr-primary-dim);border:1px solid var(--clr-primary);border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-fast);white-space:nowrap}.chat-quick-reply:hover{background:var(--clr-primary);color:#000}.chat-footer{border-top:1px solid var(--clr-border);padding:.75rem;flex-shrink:0}.chat-form{margin-bottom:.375rem}.chat-input-wrapper{display:flex;align-items:flex-end;gap:.5rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:.5rem .625rem}.chat-input{flex:1;background:none;border:none;color:var(--clr-text);font-size:.875rem;line-height:1.4;resize:none;max-height:120px;overflow-y:auto;font-family: var(--font-body)}.chat-input:focus{outline:none}.chat-input::placeholder{color:var(--clr-text-subtle)}.chat-send-btn{width:32px;height:32px;background:var(--grad-primary);border:none;border-radius:50%;color:#000;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:var(--transition-fast)}.chat-send-btn:hover{transform:scale(1.1)}.chat-footer__disclaimer{font-size:.68rem;color:var(--clr-text-subtle);text-align:center}.chat-footer__disclaimer a{color:var(--clr-text-muted)}.chat-footer__disclaimer a:hover{color:var(--clr-primary)}.chat-link-btn{display:inline-block;margin-top:.5rem;padding:.375rem .875rem;background:var(--clr-primary-dim);border:1px solid var(--clr-primary);border-radius:var(--radius-full);color:var(--clr-primary);font-size:.8rem;font-weight:600;text-decoration:none;transition:var(--transition-fast);word-break:break-all}.chat-link-btn:hover{background:var(--clr-primary);color:#000}@media (max-width:480px){.chat-panel{width:calc(100vw - 2rem);right:-.5rem}}.booking-layout{display:grid;grid-template-columns:340px 1fr;gap:2.5rem;align-items:start}.booking-info__card{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:1.5rem}.bi-item{display:flex;align-items:flex-start;gap:.875rem}.bi-icon{width:20px;height:20px;flex-shrink:0;margin-top:2px}.bi-item strong{display:block;font-size:.875rem;color:var(--clr-heading);margin-bottom:.125rem}.bi-item span{font-size:.875rem;color:var(--clr-text-muted)}.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:.875rem}.cal-nav__month{font-family: var(--font-heading);font-weight:600;font-size:1rem;color:var(--clr-heading)}.cal-nav__btn{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--clr-text-muted);cursor:pointer;padding:.375rem .625rem;transition:var(--transition-fast);display:flex;align-items:center}.cal-nav__btn:hover{background:var(--clr-primary-dim);border-color:var(--clr-primary);color:var(--clr-primary)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-bottom:1.25rem}.cal-header-day{text-align:center;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--clr-text-subtle);padding:.25rem}.cal-header-day--active{color:var(--clr-primary)}.cal-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.875rem;border-radius:var(--radius-sm);color:var(--clr-text-subtle);transition:var(--transition-fast)}.cal-cell--empty{}.cal-cell--past{opacity:.25;cursor:not-allowed}.cal-cell--disabled{color:var(--clr-text-subtle);cursor:not-allowed;opacity:.4}.cal-cell--available{color:var(--clr-text);cursor:pointer;font-weight:500;background:var(--clr-primary-dim);border:1px solid rgba(0,212,255,.15)}.cal-cell--available:hover{background:var(--clr-primary);color:#000;font-weight:700}.cal-cell--selected{background:var(--grad-primary)!important;color:#000!important;font-weight:700;box-shadow:0 4px 16px var(--clr-primary-glow)}.cal-cell--today{outline:1px solid var(--clr-primary)}.cal-slots{border-top:1px solid var(--clr-border);padding-top:1rem}.cal-slots__title{font-size:.875rem;font-weight:600;color:var(--clr-heading);margin-bottom:.75rem}.cal-slots__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.slot-btn{display:flex;flex-direction:column;align-items:center;padding:.625rem .5rem;border-radius:var(--radius-md);border:1px solid var(--glass-border);cursor:pointer;transition:var(--transition-fast);background:var(--glass-bg)}.slot-btn--free{border-color:rgba(0,212,255,.2);background:var(--clr-primary-dim)}.slot-btn--free:hover{background:var(--clr-primary);border-color:var(--clr-primary);color:#000}.slot-btn--free:hover .slot-time,.slot-btn--free:hover .slot-status{color:#000}.slot-btn--taken{opacity:.35;cursor:not-allowed}.slot-time{font-family: var(--font-heading);font-size:1rem;font-weight:700;color:var(--clr-primary);line-height:1;margin-bottom:.25rem}.slot-btn--taken .slot-time{color:var(--clr-text-subtle)}.slot-status{font-size:.68rem;color:var(--clr-text-subtle)}.booking-step__title{font-size:1.25rem;font-weight:700;margin-bottom:.25rem}.booking-success__icon{width:72px;height:72px;border-radius:50%;background:var(--clr-accent-dim);display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}.booking-success__icon svg{width:36px;height:36px}.booking-success__title{font-size:1.5rem;margin-bottom:.5rem}.booking-success__slot{font-size:1rem}@media (max-width:900px){.booking-layout{grid-template-columns:1fr}}@media (max-width:480px){.cal-slots__grid{grid-template-columns:repeat(2,1fr)}}