/* Otel Backhouse public booking page ([hgi_book]) */
.hgi-book{--ink:#14151A;--red:#A6192E;--teal:#1F7A8C;--line:#E4E3E1;--bg:#F6F5F3;--card:#fff;--mut:#5b5d66;font-family:Inter,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);padding:20px 16px 40px;box-sizing:border-box}
.hgi-book *{box-sizing:border-box}
.hb-card{max-width:640px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 22px;box-shadow:0 10px 30px rgba(20,21,26,.06)}
.hb-logo{display:block;width:190px;max-width:70%;height:auto;margin:0 0 18px}
.hgi-book h1{font-size:24px;line-height:1.2;margin:0 0 6px;font-weight:800;color:var(--ink)}
.hb-sub{margin:0 0 14px;color:var(--mut);font-size:15px;line-height:1.5}
.hb-sub a{color:var(--red)}
.hb-err{background:#FDECEA;color:#8A1C14;border-radius:10px;padding:10px 12px;margin:0 0 14px;font-size:14px}
.hb-types{display:grid;gap:10px}
.hb-type{display:flex;flex-direction:column;gap:3px;text-align:left;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);cursor:pointer;font:inherit}
.hb-type:hover,.hb-type:focus-visible{border-color:var(--red);box-shadow:0 0 0 3px rgba(166,25,46,.12);outline:none}
.hb-type b{font-size:17px}.hb-type span{color:var(--teal);font-weight:700;font-size:13.5px}.hb-type small{color:var(--mut);font-size:13.5px}
.hb-tz{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13.5px;color:var(--mut);margin:0 0 12px}
.hb-tz select{font:inherit;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);max-width:100%}
.hb-days{display:flex;gap:8px;overflow-x:auto;padding:2px 0 10px;margin:0 -2px;-webkit-overflow-scrolling:touch}
.hb-day{flex:0 0 auto;min-width:70px;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);cursor:pointer;display:flex;flex-direction:column;align-items:center;font:inherit;line-height:1.2}
.hb-day b{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--mut)}.hb-day span{font-size:15px;font-weight:700}
.hb-day.on{border-color:var(--teal);background:#E6F3F5;box-shadow:0 0 0 2px rgba(31,122,140,.2)}
.hb-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px;margin:6px 0 18px}
.hb-time{padding:12px 8px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-weight:700;font-size:15px;cursor:pointer;min-height:46px}
.hb-time:hover{border-color:var(--teal)}.hb-time.on{background:var(--teal);border-color:var(--teal);color:#fff}
.hb-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px}
.hb-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:0;border-radius:10px;background:var(--red);color:#fff;font:inherit;font-weight:700;font-size:15px;cursor:pointer;text-decoration:none}
.hb-btn:disabled{opacity:.45;cursor:not-allowed}.hb-btn:not(:disabled):hover{background:#8d1527}
.hb-danger{min-height:46px;padding:0 18px;border:1px solid #D9B1B0;border-radius:10px;background:#fff;color:#8A1C14;font:inherit;font-weight:700;cursor:pointer}
.hb-link{background:none;border:0;padding:8px 4px;color:var(--ink);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}
.hgi-book form label{display:block;margin:0 0 12px;font-size:13.5px;font-weight:600;color:var(--mut)}
.hgi-book form input,.hgi-book form textarea{display:block;width:100%;margin-top:5px;padding:11px 12px;border:1px solid #cfcdc9;border-radius:10px;font:inherit;font-size:16px;color:var(--ink);background:#fff}
.hgi-book form input:focus,.hgi-book form textarea:focus,.hb-tz select:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(31,122,140,.2)}
.hb-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.hb-ok{width:54px;height:54px;border-radius:50%;background:var(--teal);color:#fff;font-size:30px;display:flex;align-items:center;justify-content:center;margin:0 0 12px}
.hb-load,.hgi-book-load{color:var(--mut);text-align:center}
@media (prefers-color-scheme:dark){
  .hgi-book{--ink:#ECEDEF;--line:#33353C;--bg:#14161a;--card:#1D1F24;--mut:#A9ADB7}
  .hb-card{box-shadow:none}
  .hb-logo{background:#fff;border-radius:10px;padding:6px 10px}
  .hb-type,.hb-day,.hb-time,.hb-tz select,.hb-danger,.hgi-book form input,.hgi-book form textarea{background:#23262d;color:var(--ink);border-color:#3A3D45}
  .hb-day.on{background:#12333A;border-color:#4DB6C6}.hb-time.on{background:#2A8C9C;border-color:#4DB6C6}
  .hb-err{background:#4D1A15;color:#FFC2BA}.hb-danger{color:#FFC2BA}
}
@media (max-width:480px){.hb-card{padding:20px 16px;border-radius:12px}.hgi-book h1{font-size:21px}.hb-actions .hb-btn{width:100%}}
