:root{--gyl-accent:#1f6feb;--gyl-accent-contrast:#ffffff;--gyl-bg:#ffffff;--gyl-bg-soft:#f6f8fa;--gyl-text:#1f2328;--gyl-muted:#6e7781;--gyl-border:#d0d7de;--gyl-border-strong:#1f2328;--gyl-radius:8px;--gyl-success-bg:#ddf4e4;--gyl-success-text:#14532d;--gyl-error-bg:#fde7e9;--gyl-error-text:#82071e}.gyl-bookings-theme-dark{--gyl-bg:#0d1117;--gyl-bg-soft:#161b22;--gyl-text:#e6edf3;--gyl-muted:#8b949e;--gyl-border:#30363d;--gyl-border-strong:#e6edf3}.gyl-bookings-form,.gyl-bookings-quick{background:var(--gyl-bg);color:var(--gyl-text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:15px;line-height:1.4;box-sizing:border-box;max-width:100%}.gyl-bookings-form *,.gyl-bookings-quick *{box-sizing:border-box}.gyl-bookings-fieldset{border:none;padding:0;margin:0 0 1.25em 0}.gyl-bookings-legend{font-weight:600;margin-bottom:.5em;display:block;font-size:14px;color:var(--gyl-muted)}.gyl-bookings-trip-type{display:flex;gap:.5em;flex-wrap:wrap}.gyl-bookings-pill{display:inline-flex;align-items:center;padding:.5em 1em;border:1px solid var(--gyl-border);border-radius:999px;cursor:pointer;background:var(--gyl-bg);transition:background 120ms,border-color 120ms;font-size:14px}.gyl-bookings-pill input{position:absolute;opacity:0;pointer-events:none}.gyl-bookings-pill:hover{border-color:var(--gyl-accent)}.gyl-bookings-pill input:checked+span{color:var(--gyl-accent-contrast)}.gyl-bookings-pill:has(input:checked){background:var(--gyl-accent);border-color:var(--gyl-accent);color:var(--gyl-accent-contrast)}.gyl-smart-trip-type{margin-top:1.1em}.gyl-smart-trip-type[hidden]{display:none!important}.gyl-bookings-grid{display:grid;grid-template-columns:1fr;gap:1em}.gyl-bookings-grid[hidden]{display:none!important}@media (min-width:640px){.gyl-bookings-form:not(.gyl-bookings-compact) .gyl-bookings-grid{grid-template-columns:1fr 1fr}.gyl-bookings-form .gyl-bookings-field-full{grid-column:1 / -1}}.gyl-bookings-field{display:flex;flex-direction:column;gap:.35em}.gyl-bookings-field label{font-size:13px;font-weight:500;color:var(--gyl-muted)}.gyl-bookings-req{color:#c00;margin-left:2px}.gyl-bookings-input{width:100%;padding:.55em .75em;border:1px solid var(--gyl-border);border-radius:var(--gyl-radius);background:var(--gyl-bg);color:var(--gyl-text);font:inherit;transition:border-color 120ms,box-shadow 120ms}.gyl-bookings-input:focus{border-color:var(--gyl-accent);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--gyl-accent) 25%,transparent)}textarea.gyl-bookings-input{resize:vertical;min-height:80px}.gyl-bookings-submit-row{margin-top:1.5em;display:flex;align-items:center;gap:.75em}.gyl-bookings-btn{border:1px solid var(--gyl-border);background:var(--gyl-bg);color:var(--gyl-text);padding:.7em 1.3em;border-radius:var(--gyl-radius);font:inherit;font-weight:600;cursor:pointer;transition:background 120ms,transform 120ms}.gyl-bookings-btn-primary{background:var(--gyl-accent);color:var(--gyl-accent-contrast);border-color:var(--gyl-accent);font-size:16px;padding:.8em 1.6em}.gyl-bookings-btn-primary:hover{filter:brightness(.95)}.gyl-bookings-btn-primary:active{transform:translateY(1px)}.gyl-bookings-btn[disabled]{opacity:.55;cursor:not-allowed}.gyl-bookings-spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--gyl-border);border-top-color:var(--gyl-accent);display:inline-block;animation:gyl-bookings-spin 700ms linear infinite}@keyframes gyl-bookings-spin{to{transform:rotate(360deg)}}.gyl-bookings-status{margin-top:1em;padding:.75em 1em;border-radius:var(--gyl-radius);font-size:14px}.gyl-bookings-status[data-gyl-status-kind="success"]{background:var(--gyl-success-bg);color:var(--gyl-success-text)}.gyl-bookings-status[data-gyl-status-kind="error"]{background:var(--gyl-error-bg);color:var(--gyl-error-text)}.gyl-bookings-summary{margin-top:1.25em;padding:1em 1.25em;background:var(--gyl-bg-soft);border:1px solid var(--gyl-border);border-left:4px solid var(--gyl-accent);border-radius:var(--gyl-radius)}.gyl-bookings-summary-title{margin:0 0 .4em 0;font-size:16px}.gyl-bookings-summary-text{margin:0;color:var(--gyl-text)}.gyl-bookings-quick-form{display:flex;flex-wrap:wrap;gap:.5em;align-items:stretch}.gyl-bookings-quick-form .gyl-bookings-input{flex:1 1 180px;min-width:0}.gyl-bookings-quick-form .gyl-bookings-btn-primary{flex:0 0 auto}.gyl-bookings-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center}.gyl-bookings-modal[hidden]{display:none!important}.gyl-bookings-modal-backdrop{position:absolute;inset:0;background:rgb(0 0 0 / .55)}.gyl-bookings-modal-panel{position:relative;background:var(--gyl-bg);color:var(--gyl-text);max-width:640px;width:calc(100% - 2em);max-height:calc(100vh - 2em);overflow:auto;padding:1.5em;border-radius:var(--gyl-radius);box-shadow:0 30px 80px rgb(0 0 0 / .25)}.gyl-bookings-modal-close{position:absolute;top:.5em;right:.5em;border:none;background:#fff0;font-size:1.6em;line-height:1;cursor:pointer;color:var(--gyl-muted)}.gyl-bookings-btn-secondary{background:#fff0;color:var(--gyl-accent);border-color:var(--gyl-accent)}.gyl-bookings-btn-secondary:hover{background:color-mix(in srgb,var(--gyl-accent) 10%,transparent)}.gyl-bookings-btn-secondary:active{transform:translateY(1px)}.gyl-bookings-quick-form .gyl-final-book-now{flex:0 0 auto}.gyl-bookings-prefill-note{margin:0 0 1.25em 0;padding:.75em 1em;font-size:14px;background:color-mix(in srgb,var(--gyl-accent) 8%,var(--gyl-bg));color:var(--gyl-text);border:1px solid color-mix(in srgb,var(--gyl-accent) 35%,var(--gyl-border));border-left:4px solid var(--gyl-accent);border-radius:var(--gyl-radius)}.gyl-bookings-prefill-note[hidden]{display:none!important}.gyl-bookings-payment{margin:1.5em 0;padding:1.25em;background:var(--gyl-bg-soft);border:1px solid var(--gyl-border);border-radius:var(--gyl-radius)}.gyl-bookings-payment .gyl-bookings-legend{font-size:15px;color:var(--gyl-text)}.gyl-bookings-card-panel{margin-top:1em}.gyl-bookings-card-panel[hidden]{display:none!important}.gyl-bookings-card-note{margin:0 0 1em 0;padding:.7em .9em;font-size:13px;line-height:1.45;color:var(--gyl-muted);background:var(--gyl-bg);border:1px solid var(--gyl-border);border-left:3px solid var(--gyl-success-text);border-radius:var(--gyl-radius)}