#imecaf-assistant{font-family:-apple-system,BlinkMacSystemFont,'Inter','Segoe UI',Roboto,Arial,sans-serif;color:#1f2937}
#imecaf-assistant [hidden],#imecaf-assistant .hidden{display:none!important}
#chatbot-panel.flex{display:flex}
#imecaf-assistant #chatbot-panel{width:380px;max-width:calc(100vw - 1.5rem);height:min(620px,calc(100dvh - 3rem));isolation:isolate;background:white}
#imecaf-assistant #chatbot-messages{min-height:0;scroll-behavior:smooth}
#imecaf-assistant button:focus-visible,#imecaf-assistant a:focus-visible,#imecaf-assistant input:focus-visible,#imecaf-assistant select:focus-visible{outline:2px solid #1a3374;outline-offset:3px}
#imecaf-assistant .chatbot-trigger{background:#fff;color:#111;border:1px solid #111}
#imecaf-assistant .chatbot-trigger:hover{background:#1a3374;color:#fff;border-color:#1a3374}
#imecaf-assistant .chatbot-quick-panel{padding:10px;border:1px solid #e6e9ef;border-radius:14px;background:#f9fafc}
#imecaf-assistant .chatbot-quick-panel-header{display:flex;align-items:center;gap:6px;color:#667085;font-size:10px;text-transform:none;letter-spacing:.06em;font-weight:600}
#imecaf-assistant .chatbot-quick-toggle{margin-left:auto;width:32px;height:28px;border:0;border-radius:8px;color:#1a3374;background:transparent;font-size:20px;cursor:pointer}
#imecaf-assistant .chatbot-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
#imecaf-assistant .chatbot-quick-button{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px;border:1px solid #e1e6f0;border-radius:10px;background:white;color:#1a3374;font-size:11px;font-weight:600;cursor:pointer}
#imecaf-assistant .chatbot-action-chip,#imecaf-assistant .chatbot-suggestion-chip{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 11px;border:1px solid #dce3f2;border-radius:999px;background:#fff;color:#1a3374;font-size:11px;font-weight:600;line-height:1.3;cursor:pointer;text-decoration:none;text-align:center}
#imecaf-assistant .chatbot-suggestion-chip{background:#f6f7fa;color:#667085;border-color:#e8ebf0;font-weight:500}
#imecaf-assistant .chatbot-form-input{min-width:0;min-height:44px;border:1px solid #dce3f2;border-radius:14px;background:#fff;padding:10px 12px;font-size:14px;color:#1f2937}
#imecaf-assistant .rca-row{display:flex;justify-content:flex-start;margin:14px 0}
#imecaf-assistant .rca-row-user{justify-content:flex-end}
#imecaf-assistant .rca-message-wrap{max-width:92%;min-width:0}
#imecaf-assistant .rca-row-user .rca-message-wrap{max-width:85%}
#imecaf-assistant .rca-bubble{padding:10px 14px;font-size:13px;line-height:1.6;overflow-wrap:anywhere}
#imecaf-assistant .rca-user{color:white;background:linear-gradient(135deg,#1a3374,#2b3d81);border-radius:18px 18px 4px 18px;white-space:pre-wrap;box-shadow:0 2px 8px rgba(26,51,116,.16)}
#imecaf-assistant .rca-assistant{background:#fff;border:1px solid #e5e7eb;border-radius:18px 18px 18px 4px}
#imecaf-assistant .rca-actions{display:flex;flex-wrap:wrap;gap:6px;padding-left:3px;margin-top:8px}
#imecaf-assistant .chatbot-message-body p{margin:0 0 9px}
#imecaf-assistant .chatbot-message-body p:last-child{margin-bottom:0}
#imecaf-assistant .cb-title{font-weight:700;color:#1a3374}
#imecaf-assistant .cb-link{color:#1a3374;text-decoration:underline;text-underline-offset:3px}
#imecaf-assistant .cb-money{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}
#imecaf-assistant .cb-ul,#imecaf-assistant .cb-ol{padding-left:18px;margin:8px 0}
#imecaf-assistant .cb-ul{list-style:disc}#imecaf-assistant .cb-ol{list-style:decimal}
#imecaf-assistant .cb-table-wrap{overflow-x:auto;margin:8px -4px}
#imecaf-assistant .cb-table{width:100%;border-collapse:collapse;font-size:11px}
#imecaf-assistant .cb-table th,#imecaf-assistant .cb-table td{padding:7px 6px;text-align:left;border-bottom:1px solid #e9edf3}
#imecaf-assistant .cb-table th{background:#f7f9fc;color:#1a3374;font-weight:600}
#imecaf-assistant .cb-cell-r{text-align:right!important;font-variant-numeric:tabular-nums}
#imecaf-assistant .cb-kv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:6px;font-size:12px}
#imecaf-assistant .cb-kv-row{display:contents}
#imecaf-assistant .cb-kv-k{color:#6b7280}#imecaf-assistant .cb-kv-v{font-weight:500}
#imecaf-assistant .rca-thinking{display:flex;align-items:center;gap:5px;padding:5px}
#imecaf-assistant .rca-thinking span{width:6px;height:6px;border-radius:50%;background:#7f81b7;animation:rca-think 1s ease-in-out infinite alternate}
#imecaf-assistant .rca-thinking span:nth-child(2){animation-delay:.16s}#imecaf-assistant .rca-thinking span:nth-child(3){animation-delay:.32s}
@keyframes rca-think{to{opacity:.3;transform:translateY(-3px)}}
#imecaf-assistant .bk-flow-card{width:100%;margin:14px 0}
#imecaf-assistant .bk-card{border:1px solid #dfe5ef;border-radius:18px;background:#fff;padding:14px;box-shadow:0 4px 16px rgba(26,51,116,.04)}
#imecaf-assistant .bk-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:14px;color:#1a3374}
#imecaf-assistant .bk-heading>span{font-size:11px;font-weight:500;color:#9299a7;font-variant-numeric:tabular-nums}
#imecaf-assistant .bk-field{display:block;margin:10px 0;color:#374151;font-size:12px;font-weight:500}
#imecaf-assistant .bk-field>span{display:block;margin-bottom:5px}
#imecaf-assistant .bk-field input,#imecaf-assistant .bk-field select{width:100%;min-width:0;min-height:42px;padding:9px 10px;border:1px solid #dce3ee;border-radius:9px;background:white;color:#1f2937;font-size:14px;font-weight:400;box-sizing:border-box}
#imecaf-assistant .bk-hint{font-size:11px;line-height:1.6;color:#6b7280;margin:8px 0}
#imecaf-assistant .bk-btn{display:inline-flex;justify-content:center;align-items:center;gap:6px;min-height:42px;border:1px solid #1a3374;border-radius:10px;padding:9px 12px;background:#1a3374;color:#fff;font-size:12px;font-weight:600;cursor:pointer;max-width:100%;text-align:center;line-height:1.4}
#imecaf-assistant .bk-btn:disabled{opacity:.4;cursor:not-allowed}
#imecaf-assistant .bk-secondary{color:#1a3374;background:white;border-color:#dce3ee}
#imecaf-assistant .bk-footer{display:flex;gap:8px;margin-top:14px;justify-content:flex-end}
#imecaf-assistant .bk-footer>.bk-btn:last-child{flex:1}
#imecaf-assistant .bk-form-error{color:#b42318;font-size:12px;line-height:1.5;margin:8px 0}
#imecaf-assistant .bk-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#imecaf-assistant .bk-schedule-label{display:block;font-size:11px;color:#1a3374;margin-top:12px}
#imecaf-assistant .bk-cal-nav{display:flex;align-items:center;justify-content:space-between;margin:12px 0;font-size:12px;text-transform:capitalize}
#imecaf-assistant .bk-cal-nav .bk-btn{width:38px;min-height:34px;font-size:20px}
#imecaf-assistant .bk-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
#imecaf-assistant .bk-weekday{text-align:center;font-size:10px;font-weight:600;padding:6px 0;color:#6b7280}
#imecaf-assistant .bk-day{aspect-ratio:1;min-height:32px;border:0;border-radius:8px;background:#f5f7fa;color:#374151;font-size:12px;cursor:pointer}
#imecaf-assistant .bk-day:disabled{color:#bac1cb;background:#fafbfc;cursor:not-allowed}
#imecaf-assistant .bk-day.bk-sel{background:#1a3374;color:#fff;font-weight:600}
#imecaf-assistant .bk-date-add{display:flex;gap:8px;align-items:flex-end}.bk-date-add .bk-field{flex:1}
#imecaf-assistant .bk-date-add>.bk-btn{margin-bottom:10px}
#imecaf-assistant .bk-selected-dates{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}
#imecaf-assistant .bk-room-option{display:flex;gap:10px;align-items:center;padding:11px;border:1px solid #e3e7ef;border-radius:11px;margin:8px 0;font-size:12px;cursor:pointer}
#imecaf-assistant .bk-room-option input{width:17px;height:17px;flex-shrink:0;accent-color:#1a3374}
#imecaf-assistant .bk-room-option input:disabled+span{opacity:.45}
#imecaf-assistant .bk-room-option small{display:block;font-size:10px;line-height:1.5;margin-top:3px;color:#6b7280}
#imecaf-assistant .bk-room-selected{border-color:#1a3374;background:#f7f9fd}
#imecaf-assistant .bk-service{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #edf0f5;font-size:12px}
#imecaf-assistant .bk-service small{display:block;font-size:10px;line-height:1.5;color:#6b7280;margin-top:3px}
#imecaf-assistant .bk-service input{width:64px;min-height:38px;border:1px solid #dce3ee;border-radius:9px;padding:7px;text-align:center;flex-shrink:0;background:white;color:#1f2937}
#imecaf-assistant .bk-check{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.6;margin:12px 0}
#imecaf-assistant .bk-check input{width:16px;height:16px;flex-shrink:0;margin-top:2px;accent-color:#1a3374}
#imecaf-assistant .bk-check a{text-decoration:underline;color:#1a3374}
#imecaf-assistant .bk-summary{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px 10px;font-size:11px;line-height:1.6}
#imecaf-assistant .bk-summary dt{color:#667085}#imecaf-assistant .bk-summary dd{margin:0;overflow-wrap:anywhere;font-weight:500}
#imecaf-assistant .bk-total{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 0;border-top:1px solid #e5e9f1;margin-top:14px;color:#1a3374;font-size:12px;font-variant-numeric:tabular-nums}
#imecaf-assistant .bk-total strong{font-size:16px}
#imecaf-assistant .bk-edit-actions{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
#imecaf-assistant .bk-edit-actions .bk-btn{font-size:10px;min-height:32px;padding:6px 8px}
#imecaf-assistant .bk-discard{display:grid;gap:8px;padding-top:12px;border-top:1px solid #edf0f5;margin-top:12px}
#imecaf-assistant .bk-confirmation{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;font-size:12px}
#imecaf-assistant .bk-confirmation>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#edf8f0;color:#15803d;font-size:23px}
#imecaf-assistant .bk-confirmation>strong{color:#1a3374;font-size:15px;overflow-wrap:anywhere}
#imecaf-assistant .bk-qr img{width:160px;height:160px;max-width:100%}
#imecaf-assistant .bk-confirmation .bk-total{width:100%}
#imecaf-assistant .bk-card>[data-booking-action]{margin:4px 0;width:100%}
#imecaf-assistant .rental-assistant-payment{--radius:.625rem;--border:220 20% 90%;--input:220 20% 90%;--primary:222 63% 28%;--primary-foreground:0 0% 100%;--ring:222 63% 28%;--background:0 0% 100%;--foreground:220 25% 18%;--card:0 0% 100%;--card-foreground:220 25% 18%;--muted:220 15% 96%;--muted-foreground:220 10% 45%;--secondary:220 15% 96%;--secondary-foreground:222 63% 28%;--accent:220 15% 96%;--accent-foreground:222 63% 28%;font-size:13px;background:white;color:#1f2937}
#imecaf-assistant .rental-assistant-payment .min-h-screen{min-height:0}
#imecaf-assistant .rental-assistant-payment h2{font-size:18px;line-height:1.35}
#imecaf-assistant .rental-assistant-payment .reservation-card{padding:12px;border:1px solid #e6eaf1;border-radius:12px;box-shadow:none}
#imecaf-assistant .rental-assistant-payment form{min-width:0}
#imecaf-assistant .rental-assistant-payment .grid{grid-template-columns:minmax(0,1fr)}
#imecaf-assistant .rental-assistant-payment input,#imecaf-assistant .rental-assistant-payment select{width:100%;box-sizing:border-box}
#imecaf-assistant .rental-assistant-payment input[type=checkbox]{width:16px}
#imecaf-assistant .rental-assistant-payment button{font-size:12px;max-width:100%}
#imecaf-assistant .rental-assistant-payment .max-w-5xl{padding:8px}
@media(max-width:640px){#imecaf-assistant #chatbot-panel{bottom:max(.75rem,env(safe-area-inset-bottom));right:.75rem;height:min(620px,calc(100dvh - 1.5rem))}#imecaf-assistant .bk-field input,#imecaf-assistant .bk-field select,#imecaf-assistant .chatbot-form-input{font-size:16px}}
@media(prefers-reduced-motion:reduce){#imecaf-assistant *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Match the typographic hierarchy of the page reservation flow. */
#imecaf-assistant .bk-card{font-weight:400;line-height:1.55}
#imecaf-assistant .bk-heading strong{font-weight:600}
#imecaf-assistant .bk-room-option strong,#imecaf-assistant .bk-service strong,#imecaf-assistant .bk-cal-nav strong,#imecaf-assistant .bk-schedule-label{font-weight:500}
#imecaf-assistant .bk-summary dd{font-weight:400}
#imecaf-assistant .bk-btn,#imecaf-assistant .chatbot-quick-button,#imecaf-assistant .chatbot-action-chip{font-weight:500}
#imecaf-assistant .bk-total strong,#imecaf-assistant .bk-confirmation>strong,#imecaf-assistant .rca-bubble strong{font-weight:600}

/* Visual parity with the institutional assistant; booking controls stay independent. */
#imecaf-assistant #chatbot-trigger{position:relative}
#imecaf-assistant .assistant-available-dot{position:absolute;top:-4px;right:-4px;width:16px;height:16px;border-radius:50%;background:linear-gradient(135deg,#4ade80,#22c55e);box-shadow:0 4px 6px rgba(0,0,0,.1);pointer-events:none}
#imecaf-assistant #chatbot-panel{background:rgba(255,255,255,.92);backdrop-filter:blur(18px) saturate(1.15);-webkit-backdrop-filter:blur(18px) saturate(1.15);border-color:rgba(226,232,240,.95);border-radius:24px}
#imecaf-assistant .assistant-header{background:rgba(255,255,255,.7)}
#imecaf-assistant .assistant-shortcuts{background:rgba(255,255,255,.55);backdrop-filter:none}
#imecaf-assistant #chatbot-messages{background:linear-gradient(to bottom,rgba(249,250,251,.6),rgba(255,255,255,.35));padding:20px}
#imecaf-assistant .chatbot-trigger{background:rgba(255,255,255,.58);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(156,163,175,.32);box-shadow:0 10px 28px rgba(15,23,42,.12);color:#111827}
#imecaf-assistant .chatbot-trigger:hover{background:rgba(255,255,255,.7);border-color:rgba(107,114,128,.42);color:#111827}
#imecaf-assistant .chatbot-quick-panel{padding:.8rem;border-radius:1.25rem;background:linear-gradient(180deg,rgba(248,250,252,.98),rgba(255,255,255,.94));border:1px solid rgba(226,232,240,.95);box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
#imecaf-assistant .chatbot-quick-panel-header{gap:.5rem;margin-bottom:.7rem;color:#1a3374;font-size:.76rem;font-weight:600;letter-spacing:.08em}
#imecaf-assistant .chatbot-quick-toggle{width:24px;height:24px;border:1px solid rgba(203,213,225,.7);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.8);color:#64748b}
#imecaf-assistant .chatbot-quick-toggle[aria-expanded=false] svg{transform:rotate(180deg)}
#imecaf-assistant .chatbot-quick-button{justify-content:flex-start;gap:.55rem;min-height:44px;padding:.6rem .8rem;border-radius:.9rem;background:rgba(255,255,255,.92);border-color:rgba(203,213,225,.9);font-size:.74rem;font-weight:600;line-height:1.3;text-align:left;box-shadow:0 2px 8px rgba(15,23,42,.05)}
#imecaf-assistant .chatbot-quick-btn-icon{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;color:#1a3374}
#imecaf-assistant .chatbot-quick-btn-icon svg{width:20px;height:20px}
#imecaf-assistant .chatbot-quick-btn-label{flex:1;min-width:0}
#imecaf-assistant .chatbot-quick-button:hover{background:rgba(241,245,255,.97);border-color:rgba(26,51,116,.28)}
#imecaf-assistant .rca-message-wrap{max-width:88%}
#imecaf-assistant .rca-bubble{font-size:13.5px;line-height:1.62;font-weight:400}
#imecaf-assistant .chatbot-action-chip,#imecaf-assistant .chatbot-suggestion-chip{min-height:28px;padding:5px 11px;font-size:11px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.92));font-weight:500}
#imecaf-assistant .assistant-composer{background:rgba(255,255,255,.65)}
#imecaf-assistant .chatbot-form-input{background:rgba(249,250,251,.7);border-color:#e5e7eb;border-radius:16px}
#imecaf-assistant .assistant-input-hint{margin:9px 0 0;text-align:center;font-size:11px;color:#9ca3af}
#imecaf-assistant .assistant-input-hint kbd{padding:2px 5px;border-radius:4px;background:#f3f4f6;font-family:inherit}


/* Composer matches the global assistant, including the upward send icon. */
#imecaf-assistant .assistant-composer{padding:16px;background:#fff;border-top:1px solid #f3f4f6}
#imecaf-assistant #chatbot-form{gap:12px;align-items:center}
#imecaf-assistant .assistant-input-wrap{position:relative;flex:1;min-width:0;border-radius:16px}
#imecaf-assistant .chatbot-form-input{width:100%;height:44px;min-height:44px;padding:0 16px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;font-size:14px;font-weight:400;box-sizing:border-box}
#imecaf-assistant .chatbot-form-input:focus-visible{outline:2px solid #7f81b7;outline-offset:2px}
#imecaf-assistant .assistant-send{width:44px;height:44px;flex-shrink:0;border:1px solid #e5e7eb;border-radius:50%;background:#fff;color:#374151;box-shadow:0 1px 2px rgba(0,0,0,.05);transition:box-shadow .2s}
#imecaf-assistant .assistant-send svg{width:20px;height:20px}
#imecaf-assistant .assistant-send:hover{box-shadow:0 4px 6px rgba(0,0,0,.1)}
#imecaf-assistant .assistant-send:disabled,#imecaf-assistant #chatbot-form:has(#chatbot-input:placeholder-shown) .assistant-send{opacity:.4}
#imecaf-assistant .assistant-input-hint{display:block;margin:10px 0 0;font-size:12px;line-height:16px;color:#9ca3af}
#imecaf-assistant .assistant-input-hint kbd{padding:2px 6px;border:1px solid #e5e7eb;border-radius:4px;background:#f3f4f6;font-size:12px}
@media(max-width:640px){#imecaf-assistant .chatbot-form-input{font-size:16px}}

/* Booking gets room to breathe without changing ordinary conversations. */
#imecaf-assistant.panel-open #chatbot-trigger{display:none!important}
#imecaf-assistant .assistant-booking-toolbar[hidden]{display:none}
#imecaf-assistant .assistant-booking-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 20px;border-bottom:1px solid #e6e9ef;background:rgba(255,255,255,.8);flex-shrink:0;color:#667085;font-size:12px}
#imecaf-assistant #chatbot-booking-size{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 12px;border:1px solid #1a337426;border-radius:999px;background:#fff;color:#1a3374;font:inherit;font-weight:500;cursor:pointer}
#imecaf-assistant #chatbot-booking-size:hover{background:#f1f5ff}
#imecaf-assistant #chatbot-booking-size:focus-visible{outline:2px solid #1a3374;outline-offset:3px}
#imecaf-assistant.booking-active .assistant-shortcuts{display:none}
#imecaf-assistant.booking-expanded #chatbot-panel{width:clamp(440px,54vw,760px);height:min(800px,calc(100dvh - 64px));bottom:32px;right:24px}
#imecaf-assistant.booking-expanded #chatbot-messages{scroll-padding-top:20px}
@media(max-width:640px){
  #imecaf-assistant.booking-expanded #chatbot-panel{width:calc(100vw - 24px);height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));bottom:calc(12px + env(safe-area-inset-bottom));right:12px}
  #imecaf-assistant .assistant-booking-toolbar{padding:6px 14px}
}

/* Availability uses the same colors as the page calendar. */
#imecaf-assistant[hidden]{display:none!important}
#imecaf-assistant #chatbot-messages{scroll-behavior:auto;position:relative}
#imecaf-assistant .bk-day.bk-partial,#imecaf-assistant .bk-legend .bk-partial{background:#fef3c7;color:#92400e;border:1px solid #f59e0b}
#imecaf-assistant .bk-day.bk-full,#imecaf-assistant .bk-legend .bk-full{background:#fecaca;color:#991b1b}
#imecaf-assistant .bk-day small{display:block;font-size:9px;line-height:1.2}
#imecaf-assistant .bk-day.bk-sel{background:#1a3374;color:white}
#imecaf-assistant .bk-legend{display:flex;gap:6px;flex-wrap:wrap;font-size:11px}
#imecaf-assistant .bk-legend span{padding:4px 7px;border-radius:6px;background:#f5f7fa}
#imecaf-assistant .bk-occupancy{border:1px solid #e3e7ef;border-radius:12px;padding:10px;margin:8px 0;font-size:12px;line-height:1.6}
#imecaf-assistant .bk-occupancy summary{cursor:pointer;font-weight:500;color:#1a3374}
#imecaf-assistant .bk-occupancy p{margin:5px 0}
#imecaf-assistant .bk-room-option .bk-room-blocks{color:#92400e}
@media(max-width:400px){#imecaf-assistant .assistant-header img{max-width:calc(100vw - 144px);height:auto;max-height:24px}#imecaf-assistant .bk-day{line-height:1.2}#imecaf-assistant .bk-day small{font-size:8px}}
/* Calendar cells keep their height when the booking window expands. */
#imecaf-assistant .bk-calendar{max-width:420px;margin:0 auto}
#imecaf-assistant .bk-day{aspect-ratio:auto;height:40px}
#imecaf-assistant .bk-cal-nav{max-width:420px;margin:12px auto}
#imecaf-assistant .bk-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}

/* The shared form owns its vertical scroll inside the assistant. */
#imecaf-assistant #chatbot-messages:has(.bk-shared-reservation){scrollbar-width:none}
#imecaf-assistant #chatbot-messages:has(.bk-shared-reservation)::-webkit-scrollbar{display:none}
@media(max-width:400px){#imecaf-assistant #chatbot-messages:has(.bk-shared-reservation){padding:8px}}

@media(min-width:641px){#imecaf-assistant.booking-expanded #chatbot-panel:has(.bk-shared-reservation){width:min(560px,calc(100vw - 48px))}}
#imecaf-assistant .bk-shared-reservation{background:transparent}

/* Keep the launcher's space visible while the deferred modules initialize. */
#imecaf-assistant[data-assistant-state=loading] #chatbot-trigger,
#imecaf-assistant[data-assistant-state=error] #chatbot-trigger{background:#f1f2f4;color:#9ca3af;border-color:#e0e3e8;cursor:default;transform:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;isolation:isolate}
#imecaf-assistant[data-assistant-state=loading] .assistant-available-dot,
#imecaf-assistant[data-assistant-state=error] .assistant-available-dot{visibility:hidden}
#imecaf-assistant[data-assistant-state=loading] #chatbot-trigger::before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.8) 45%,transparent 75%);background-size:240% 100%;animation:assistant-launcher-shimmer 1.8s ease-in-out infinite;pointer-events:none;z-index:0}
#imecaf-assistant[data-assistant-state=loading] .rental-help-label{position:relative}
@keyframes assistant-launcher-shimmer{from{background-position:160% 0}to{background-position:-60% 0}}
@media(prefers-reduced-motion:reduce){#imecaf-assistant[data-assistant-state=loading] #chatbot-trigger::before{animation:none;background:#ffffff40}}

#imecaf-assistant .bk-cancellation{font-size:14px;line-height:1.6;overflow-wrap:anywhere;box-sizing:border-box}
#imecaf-assistant .bk-cancellation h3{font-size:18px;font-weight:600;color:#1a3374;margin-bottom:12px}
#imecaf-assistant .bk-cancellation p{margin:10px 0}
#imecaf-assistant .bk-cancellation textarea{display:block;width:100%;box-sizing:border-box;resize:vertical;border:1px solid #dce3ee;border-radius:12px;padding:10px;font:inherit;font-size:16px;background:white}
#imecaf-assistant .bk-cancellation input[type=checkbox]{width:20px;height:20px;min-height:20px;margin:0 8px 0 0;padding:0;vertical-align:middle;accent-color:#1a3374}
#imecaf-assistant .bk-cancellation .bk-btn{min-height:48px;border-radius:9999px;font-weight:500}
#imecaf-assistant .bk-cancellation .bk-footer{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch}
#imecaf-assistant .bk-cancellation .bk-footer>.bk-btn{width:100%;min-width:0;height:auto;min-height:48px;flex:none;white-space:normal;overflow-wrap:normal;word-break:normal}
