/* FanBound assistant v1.0 (site v8.2): chat button + panel and the booking form. FanBound colours (teal #0B5963, gold #F6C05F). */
.fbc-btn{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:90;display:flex;align-items:center;gap:8px;background:#0B5963;color:#fff;border:0;border-radius:999px;padding:12px 16px;font:800 15px system-ui,-apple-system,"Segoe UI",sans-serif;box-shadow:0 10px 30px rgba(0,0,0,.28);cursor:pointer}
.fbc-btn:hover{background:#0A3238}.fbc-btn svg{width:20px;height:20px;fill:currentColor}
.fbc-btn:focus-visible{outline:3px solid #F6C05F;outline-offset:3px}
.fbc{position:fixed;right:16px;bottom:calc(80px + env(safe-area-inset-bottom,0px));z-index:95;width:min(390px,calc(100vw - 24px));max-height:min(640px,calc(100dvh - 120px));display:none;flex-direction:column;background:#fff;border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.35);overflow:hidden;font:15px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif;color:#13262A;text-align:left}
.fbc.open{display:flex}
.fbc header{background:#0A3238;color:#fff;padding:12px 14px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.fbc header b{font-size:15px}.fbc header small{display:block;color:#B9CAC7;font-size:12.5px}
.fbc header button{border:0;background:rgba(255,255,255,.14);color:#fff;border-radius:999px;width:32px;height:32px;font-size:18px;cursor:pointer}
.fbc .log{padding:12px;overflow:auto;display:grid;gap:8px;align-content:start;flex:1;overscroll-behavior:contain}
.fbc .m{max-width:92%;padding:9px 12px;border-radius:12px;white-space:pre-line;margin:0}
.fbc .m.b{background:#E3EEEC;border-bottom-left-radius:4px}
.fbc .m.u{background:#0B5963;color:#fff;justify-self:end;border-bottom-right-radius:4px}
.fbc .qs{display:flex;flex-wrap:wrap;gap:6px}
.fbc .qs .g{flex-basis:100%;margin:6px 0 0;font:800 11.5px system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#536A6D}
.fbc .qs button,.fbc .acts a,.fbc .acts button{font:700 13.5px system-ui,sans-serif;border:1.5px solid #0B5963;color:#0B5963;background:#fff;border-radius:999px;padding:6px 10px;cursor:pointer;text-decoration:none;line-height:1.2}
.fbc .qs button:hover,.fbc .acts a:hover,.fbc .acts button:hover{background:#E3EEEC}
.fbc .acts{display:flex;flex-wrap:wrap;gap:6px}
.fbc .acts .p{background:#0B5963;color:#fff}.fbc .acts .p:hover{background:#0A3238}
.fbc form.in{display:flex;gap:6px;border-top:1px solid #D3DDDA;padding:8px;margin:0}
.fbc form.in input{flex:1;min-width:0;font:16px system-ui,sans-serif;padding:9px 10px;border:1.5px solid #B9CAC7;border-radius:8px;color:#13262A;background:#fff}
.fbc form.in button{border:0;background:#0B5963;color:#fff;border-radius:8px;padding:0 14px;font-weight:800;cursor:pointer}
.fbc form.cb{display:grid;gap:6px;background:#F4F6F3;border-radius:10px;padding:10px;margin:0}
.fbc form.cb label{font-weight:700;font-size:14px}
.fbc form.cb input{font:16px system-ui,sans-serif;padding:9px 10px;border:1.5px solid #B9CAC7;border-radius:8px}
.fbc form.cb button{border:0;background:#0B5963;color:#fff;border-radius:8px;padding:10px;font-weight:800;cursor:pointer}
@media (max-width:760px){
  .fbc-btn{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:11px 14px;font-size:14px}
  .fbc-btn span{display:none}.fbc-btn{width:52px;height:52px;justify-content:center;padding:0}
  .fbc{right:8px;left:8px;width:auto;bottom:calc(72px + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 96px)}
}
/* booking modal */
.fbm{position:fixed;inset:0;z-index:100;background:rgba(7,30,34,.62);display:none;align-items:flex-end;justify-content:center}
.fbm.open{display:flex}
.fbm .box{background:#fff;color:#13262A;width:min(560px,100%);max-height:100dvh;overflow:auto;border-radius:16px 16px 0 0;padding:22px 20px calc(22px + env(safe-area-inset-bottom,0px));font-family:system-ui,-apple-system,"Segoe UI",sans-serif;text-align:left}
@media (min-width:700px){.fbm{align-items:center}.fbm .box{border-radius:14px;max-height:92vh}}
.fbm h2{font:800 1.55rem/1.2 system-ui,sans-serif;color:#0A3238;margin:0 0 4px}
.fbm p{color:#536A6D;font-size:15px;margin:0 0 14px}
.fbm .x{float:right;border:0;background:#E3EEEC;color:#0A3238;border-radius:999px;width:36px;height:36px;font-size:20px;cursor:pointer}
.fbm label{display:block;font-weight:700;font-size:14.5px;margin:10px 0 5px;color:#13262A}
.fbm input,.fbm select{width:100%;font:16px system-ui,sans-serif;padding:11px 12px;border:1.5px solid #B9CAC7;border-radius:8px;background:#fff;color:#13262A;box-sizing:border-box}
.fbm fieldset{border:0;padding:0;margin:10px 0 0}.fbm legend{font-weight:700;font-size:14.5px;margin-bottom:6px}
.fbm .pk{display:flex;flex-wrap:wrap;gap:6px}.fbm .pk label{margin:0}
.fbm .pk input{position:absolute;opacity:0;width:1px;height:1px}
.fbm .pk span{display:inline-block;padding:8px 12px;border:1.5px solid #B9CAC7;border-radius:999px;cursor:pointer;font-size:14.5px}
.fbm .pk input:checked+span{background:#0B5963;border-color:#0B5963;color:#fff}
.fbm .pk input:focus-visible+span{outline:3px solid #F6C05F}
.fbm .fbb{display:flex;align-items:center;justify-content:center;width:100%;margin-top:16px;font:800 16px system-ui,sans-serif;text-decoration:none;border-radius:8px;padding:14px 18px;border:2px solid #F6C05F;background:#F6C05F;color:#0A3238;cursor:pointer;box-sizing:border-box}
.fbm .st{margin-top:10px;font-weight:700;font-size:14.5px}.fbm .st.err{color:#9B2C1F}
.fbm .done{display:none}.fbm.sent .form{display:none}.fbm.sent .done{display:block}
.fbm .tiny{font-size:14px;margin-top:14px;text-align:center}.fbm .tiny a{color:#0B5963}
.fbm .hpf{position:absolute;left:-5000px}
