body.bgas-lock{overflow:hidden}.bgas-btn{border:0;border-radius:6px;background:#e32124;color:#fff;font-weight:800;padding:14px 20px;cursor:pointer}.bgas-btn:hover{background:#b9181b}.bgas-launch{padding:20px;border:1px solid #dde2e8;border-radius:8px;background:#fff}.bgas-launch p{margin:10px 0 0;color:#626b78}.bgas-modal{display:none;position:fixed;inset:0;z-index:1000000}.bgas-modal.open{display:block}.bgas-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72)}.bgas-dialog{position:relative;width:min(760px,calc(100% - 28px));max-height:calc(100vh - 32px);overflow:auto;margin:16px auto;background:#fff;border-radius:12px;box-shadow:0 25px 70px rgba(0,0,0,.4)}.bgas-close{position:absolute;top:12px;right:14px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:28px;cursor:pointer}.bgas-dialog header{padding:32px 58px 26px 32px;background:#0d1117;color:#fff}.bgas-dialog header small{color:#ff4c4f;font-weight:900}.bgas-dialog header h2{margin:7px 0;color:#fff}.bgas-dialog header p{margin:0;color:#c8d0d9}.bgas-dialog form{padding:28px 32px 32px}.bgas-dialog h3{margin:24px 0 12px;color:#e32124;font-size:13px;text-transform:uppercase}.bgas-dialog h3:first-child{margin-top:0}.bgas-grid{display:grid;gap:14px}.bgas-grid.two{grid-template-columns:1fr 1fr}.bgas-grid.three{grid-template-columns:.7fr 1.15fr 1.15fr}.bgas-dialog label{display:block;margin:0 0 14px;color:#111827;font-weight:700;font-size:13px}.bgas-dialog input:not([type=checkbox]),.bgas-dialog select,.bgas-dialog textarea{width:100%;box-sizing:border-box;margin-top:7px;padding:12px;border:1px solid #cfd6df;border-radius:7px;background:#fff;color:#111827;font:inherit}.bgas-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:10px 0 18px}.bgas-slot{padding:12px 8px;border:1px solid #cfd6df;border-radius:7px;background:#fff;font-weight:800}.bgas-slot.selected{background:#e32124;border-color:#e32124;color:#fff}.bgas-slot:disabled{opacity:.45}.bgas-check{padding:14px;border-radius:8px;background:#f4f6f8}.bgas-check input{margin-right:8px}.bgas-msg{margin-top:16px}.bgas-msg.ok,.bgas-msg.err{padding:13px;border-radius:7px}.bgas-msg.ok{background:#ecf8ef;color:#166534}.bgas-msg.err{background:#fff0f0;color:#9b1c1c}@media(max-width:640px){.bgas-dialog{width:100%;height:100vh;max-height:100vh;margin:0;border-radius:0}.bgas-dialog header{padding:26px 52px 22px 20px}.bgas-dialog form{padding:22px 20px 28px}.bgas-grid.two,.bgas-grid.three{grid-template-columns:1fr}.bgas-slots{grid-template-columns:1fr 1fr}.bgas-dialog .bgas-btn{width:100%}}

.bgas-confirm-modal.open{display:block}
.bgas-confirm-dialog{
  position:relative;
  width:min(560px,calc(100% - 28px));
  margin:10vh auto 0;
  padding:42px 38px 38px;
  box-sizing:border-box;
  border-radius:14px;
  background:#fff;
  text-align:center;
  box-shadow:0 28px 90px rgba(0,0,0,.42);
}
.bgas-confirm-close{
  position:absolute;
  top:12px;
  right:14px;
  width:38px;
  height:38px;
  border:0;
  border-radius:50%;
  background:#f1f3f5;
  color:#111827;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}
.bgas-confirm-icon{
  display:grid;
  place-items:center;
  width:72px;
  height:72px;
  margin:0 auto 18px;
  border-radius:50%;
  background:#ecf8ef;
  color:#166534;
  font-size:36px;
  font-weight:900;
}
.bgas-confirm-dialog small{
  display:block;
  margin-bottom:10px;
  color:#e32124;
  font-weight:900;
  letter-spacing:.05em;
}
.bgas-confirm-dialog h2{
  margin:0 0 14px;
  color:#111827;
  font-size:30px;
  line-height:1.15;
}
.bgas-confirm-dialog p{
  margin:10px auto;
  color:#4b5563;
  line-height:1.55;
}
.bgas-confirm-ref{
  margin:22px auto;
  padding:15px 18px;
  border:1px solid #d8dee7;
  border-radius:8px;
  background:#f7f8fa;
  color:#111827;
  font-size:18px;
}
.bgas-confirm-note{
  font-size:14px;
}
.bgas-confirm-dialog .bgas-btn{
  min-width:150px;
  margin-top:10px;
}
@media(max-width:640px){
  .bgas-confirm-dialog{
    width:calc(100% - 24px);
    margin:8vh auto 0;
    padding:36px 22px 28px;
  }
  .bgas-confirm-dialog h2{font-size:25px}
  .bgas-confirm-dialog .bgas-btn{width:100%}
}


/* v0.5.3 appointment vehicle entry */
.bgas-vehicle-choice{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px}
.bgas-vehicle-choice label{margin:0!important;padding:10px 13px;border:1px solid #cfd6df;border-radius:7px;background:#f7f8fa;cursor:pointer}
.bgas-vehicle-choice input{margin-right:7px}
.bgas-vin-entry{margin-top:4px}
.bgas-vin-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin-top:7px}
.bgas-vin-row input{margin-top:0!important;text-transform:uppercase}
.bgas-vin-btn{min-height:45px;padding:0 16px;border:0;border-radius:7px;background:#0d1117;color:#fff;font-weight:800;cursor:pointer}
.bgas-vin-btn:hover{background:#252b34}.bgas-vin-btn:disabled{opacity:.6;cursor:wait}
.bgas-public-vin-result{display:none;margin:10px 0 0;padding:11px 13px;border-radius:7px;font-weight:700}
.bgas-public-vin-result.ok{display:block;background:#ecf8ef;color:#166534}
.bgas-public-vin-result.err{display:block;background:#fff0f0;color:#9b1c1c}
.bgas-vin-help{margin:8px 0 0;color:#626b78;font-size:13px}
@media(max-width:640px){.bgas-vin-row{grid-template-columns:1fr}.bgas-vin-btn{width:100%}}
