#booking-modal{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#f4f7f9;color:#173247;overflow:hidden}#booking-modal::backdrop{background:#0b2536}.gb-shell{display:grid;grid-template-rows:auto auto minmax(0,1fr);height:100%;font-family:"DM Sans",sans-serif}.gb-header{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:22px;padding:16px 24px;background:#102c40;color:#fff}.gb-brand,.gb-header-actions{display:flex;align-items:center;gap:11px}.gb-brand>span{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#2bbfed;color:#08263b;font-weight:900}.gb-brand>div,.gb-header-customer{display:grid;gap:2px}.gb-brand small,.gb-header-customer small{color:#9fc4d7;font-size:9px;font-weight:800;letter-spacing:1px}.gb-brand strong{font:800 14px Manrope}.gb-header-customer{text-align:right}.gb-header-customer strong{font-size:11px}.gb-header-actions button{padding:8px 12px;border:1px solid rgb(255 255 255 / 24%);border-radius:8px;background:transparent;color:#fff;font:800 10px "DM Sans";cursor:pointer}.gb-progress{display:flex;align-items:center;gap:15px;padding:10px 24px;border-bottom:1px solid #dbe6eb;background:#fff}.gb-progress>span{min-width:180px;color:#557080;font-size:10px;font-weight:900}.gb-progress>div{height:4px;flex:1;border-radius:99px;background:#e2edf1;overflow:hidden}.gb-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#176ca4,#2bbfed);transition:width .2s ease}.gb-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;min-height:0}.gb-layout>main{min-width:0;overflow:auto}.gb-screen{display:grid;align-content:start;gap:20px;min-height:100%;max-width:1100px;margin:auto;padding:42px 54px 28px}.gb-kicker{color:#1776ac;font-size:10px;font-weight:900;letter-spacing:1.1px;text-transform:uppercase}.gb-screen h1{max-width:800px;margin:-8px 0 0;font:800 clamp(28px,3.2vw,45px) Manrope}.gb-lead{max-width:760px;margin:-9px 0 2px;color:#617986;font-size:13px;line-height:1.55}.gb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.gb-grid label,.gb-search,.gb-reg-row label,.gb-long{display:grid;gap:7px;color:#526b7b;font-size:10px;font-weight:900}.gb-grid input,.gb-grid select,.gb-search input,.gb-reg-row input,.gb-long input,.gb-long textarea,.gb-communications input,.gb-communications textarea{width:100%;padding:13px 14px;border:1px solid #cbdce4;border-radius:10px;background:#fff;color:#173247;font:600 13px "DM Sans";outline:none}.gb-grid input:focus,.gb-grid select:focus,.gb-search input:focus,.gb-reg-row input:focus,.gb-long input:focus,.gb-long textarea:focus,.gb-communications input:focus,.gb-communications textarea:focus{border-color:#1776ac;box-shadow:0 0 0 3px rgb(43 191 237 / 13%)}.gb-customer-results{display:grid;gap:7px}.gb-customer-results>button{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:15px;padding:12px 14px;border:1px solid #d2e0e7;border-radius:11px;background:#fff;text-align:left;cursor:pointer}.gb-customer-results span{display:grid;gap:3px}.gb-customer-results small,.gb-customer-results p{color:#647b89;font-size:10px}.gb-customer-results em{color:#1776ac;font-size:10px;font-style:normal;font-weight:900}.gb-reg-row{display:grid;grid-template-columns:minmax(240px,520px) auto;align-items:end;gap:10px}.gb-reg-row button{height:44px}.gb-lookup-state{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px dashed #cbdce4;border-radius:12px;background:#fff;color:#617986;font-size:11px}.gb-lookup-state.loading{color:#1776ac}.gb-lookup-state.error{border-style:solid;border-color:#e4c7be;background:#fff8f6}.gb-lookup-state button,.gb-text-action,.gb-vehicle-result button,.gb-manual-vehicle button{border:0;background:none;color:#1776ac;font:800 10px "DM Sans";cursor:pointer}.gb-text-action{justify-self:start}.gb-vehicle-result,.gb-manual-vehicle{display:grid;gap:14px;padding:18px;border:1px solid #bcd9e5;border-radius:14px;background:#fff}.gb-vehicle-result header,.gb-manual-vehicle header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.gb-vehicle-result h2{margin:3px 0 0;font:800 20px Manrope}.gb-vehicle-result header small{color:#1776ac;font-size:9px;font-weight:900}.gb-vehicle-result>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.gb-vehicle-result span{display:grid;gap:3px;padding:10px;border-radius:9px;background:#f2f7f9}.gb-vehicle-result span small{color:#6c818d;font-size:8px;font-weight:900}.gb-vehicle-result span b{overflow:hidden;font-size:10px;text-overflow:ellipsis}.gb-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.gb-service-grid>button{display:grid;grid-template-columns:5px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:84px;padding:13px;border:1px solid #d1dfe6;border-radius:13px;background:#fff;text-align:left;cursor:pointer}.gb-service-grid>button>i{width:5px;height:48px;border-radius:99px;background:var(--service)}.gb-service-grid span{display:grid;gap:5px}.gb-service-grid small{color:#687f8c;font-size:10px}.gb-service-grid b{color:#1776ac;font-size:10px}.gb-service-grid>button.selected,.gb-service-grid>button:hover{border-color:var(--service);box-shadow:0 8px 25px rgb(18 59 84 / 9%)}.gb-choice-grid,.gb-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.gb-choice-grid button{min-height:76px;padding:17px;border:1px solid #cedde4;border-radius:12px;background:#fff;color:#173247;text-align:left;font:800 13px "DM Sans";cursor:pointer}.gb-choice-grid button.selected,.gb-choice-grid button:hover{border-color:#1776ac;background:#ebf7fb;box-shadow:inset 4px 0 #2bbfed}.gb-check-grid label{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid #d1dfe6;border-radius:11px;background:#fff;font-size:12px}.gb-date-toolbar{display:flex;align-items:center;justify-content:space-between}.gb-date-toolbar button{padding:8px 11px;border:1px solid #cadae2;border-radius:8px;background:#fff;color:#176ca4;font-weight:800}.gb-date-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.gb-date-strip button{display:grid;gap:4px;min-height:78px;padding:9px;border:1px solid #d4e2e8;border-radius:10px;background:#fff;color:#29475a;text-align:center;cursor:pointer}.gb-date-strip small{font-size:9px}.gb-date-strip strong{font:800 20px Manrope}.gb-date-strip span{color:#6a808d;font-size:8px}.gb-date-strip button.selected{border-color:#1776ac;background:#eaf7fc}.gb-slot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.gb-slot-grid button{display:grid;gap:4px;min-height:82px;padding:11px;border:1px solid #d2e0e6;border-radius:10px;background:#fff;text-align:left;cursor:pointer}.gb-slot-grid button strong{font:800 15px Manrope}.gb-slot-grid button span,.gb-slot-grid button small{color:#647b89;font-size:9px}.gb-slot-grid button.selected{border-color:#1776ac;background:#eaf7fc}.gb-slot-grid button:disabled{opacity:.48;cursor:not-allowed}.gb-toggle{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #cbdde5;border-radius:11px;background:#fff}.gb-toggle span{display:grid;gap:3px}.gb-toggle small{color:#667d89}.gb-review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gb-review-grid article{padding:15px;border:1px solid #d4e2e8;border-radius:12px;background:#fff}.gb-review-grid header{display:flex;justify-content:space-between;gap:8px}.gb-review-grid header strong{font-size:10px}.gb-review-grid button{border:0;background:none;color:#1776ac;font:800 9px "DM Sans";cursor:pointer}.gb-review-grid h3{margin:14px 0 5px;font:800 14px Manrope}.gb-review-grid p{margin:0;color:#637a87;font-size:10px;line-height:1.45}.gb-communications{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gb-communications article{display:grid;gap:10px;padding:15px;border:1px solid #cfe0e7;border-radius:13px;background:#fff}.gb-communications article.disabled{opacity:.6}.gb-communications header label{display:flex;align-items:center;gap:10px}.gb-communications header span{display:grid;gap:3px}.gb-communications header small{color:#687f8c;font-size:9px}.gb-communications textarea{resize:vertical}.gb-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px}.gb-footer button{min-width:120px;padding:12px 18px}.gb-summary{display:grid;align-content:start;gap:12px;padding:24px 18px;border-left:1px solid #d6e3e9;background:#edf3f6}.gb-summary>div{display:grid;gap:5px;padding:14px;border:1px solid #d5e2e7;border-radius:11px;background:#fff}.gb-summary small{color:#718591;font-size:8px;font-weight:900;letter-spacing:1px}.gb-summary strong{font-size:12px}.gb-summary span{color:#627986;font-size:10px}.gb-summary>p{color:#718591;font-size:10px;line-height:1.45}
@media(max-width:1000px){.gb-layout{grid-template-columns:1fr}.gb-summary{display:none}.gb-screen{padding:34px 34px 24px}.gb-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gb-vehicle-result>div{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.gb-header{grid-template-columns:1fr auto;padding:12px 14px}.gb-header-customer{grid-column:1/-1;grid-row:2;text-align:left}.gb-header-actions{grid-column:2;grid-row:1}.gb-progress{padding-inline:15px}.gb-progress>span{min-width:130px}.gb-screen{gap:17px;padding:28px 18px 18px}.gb-grid,.gb-service-grid,.gb-choice-grid,.gb-check-grid,.gb-communications,.gb-review-grid{grid-template-columns:1fr}.gb-reg-row{grid-template-columns:1fr}.gb-date-strip{grid-template-columns:repeat(4,minmax(0,1fr));overflow:auto}.gb-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gb-vehicle-result>div{grid-template-columns:repeat(2,minmax(0,1fr))}.gb-footer{position:sticky;bottom:-18px;margin-inline:-18px;padding:12px 18px;background:#f4f7f9}.gb-header-customer strong{max-width:80vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(max-width:430px){.gb-brand>span,.gb-header-actions button:first-child{display:none}.gb-screen h1{font-size:27px}.gb-date-strip{grid-template-columns:repeat(3,minmax(92px,1fr))}.gb-slot-grid{grid-template-columns:1fr}.gb-vehicle-result>div{grid-template-columns:1fr}.gb-footer button{min-width:100px}}
