.twm-booking-wrapper{--twm-bg: #f7f9fb;--twm-surface: #ffffff;--twm-card: #f9fafb;--twm-text: #111827;--twm-muted: #6b7280;--twm-accent: #fff5c4;--twm-primary: #ffcd1a;--twm-primary-contrast: #111827;--twm-border: #e5e7eb;--twm-shadow: 0 10px 30px rgba(15, 23, 42, .08);--twm-input-bg: #ffffff;color:var(--twm-text);background:transparent;padding:0;border-radius:0;box-shadow:none;font-family:Inter,Segoe UI,system-ui,sans-serif}.twm-booking-form{display:grid;gap:24px}.twm-step{background:var(--twm-surface);border:1px solid var(--twm-border);border-radius:18px;padding:22px;box-shadow:inset 0 1px #ffffff80}.twm-step-header h3{margin:0 0 6px;font-size:20px;font-weight:600}.twm-step-header p{margin:0;color:var(--twm-muted)}.twm-field{display:flex;flex-direction:column;gap:8px;margin-top:16px}.twm-field label{font-size:14px;color:var(--twm-muted)}.twm-field input,.twm-field select,.twm-field textarea{background:var(--twm-input-bg);border:1px solid var(--twm-border);border-radius:12px;padding:12px 14px;color:var(--twm-text);font-size:15px;transition:border-color .2s ease,box-shadow .2s ease}.twm-field input:focus,.twm-field select:focus,.twm-field textarea:focus{outline:none;border-color:var(--twm-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--twm-primary) 30%,transparent)}.twm-input-group{display:flex;gap:10px;align-items:center}.twm-country-select{width:64px;min-width:64px;text-align:center;padding-left:0;padding-right:0}.twm-input-group-field{flex:1}.twm-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.twm-btn{background:#fff;border:1px solid var(--twm-border);border-radius:999px;padding:12px 20px;font-size:15px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;color:var(--twm-text);transition:border-color .2s ease}.twm-btn-primary{background:#fff;color:var(--twm-text);font-weight:600;box-shadow:none}.twm-btn-secondary{background:#fff;border:1px solid var(--twm-border);color:var(--twm-text)}.twm-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.twm-btn:not(:disabled):hover{border-color:var(--twm-primary)}.twm-location-tools{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0 8px}.twm-icon{font-size:18px}.twm-autocomplete{position:relative}.twm-autocomplete-list{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--twm-border);border-radius:12px;padding:6px;display:grid;gap:4px;z-index:5}.twm-autocomplete-list button{background:transparent;border:none;color:var(--twm-text);text-align:left;padding:8px 10px;border-radius:8px;cursor:pointer}.twm-autocomplete-list button:hover{background:color-mix(in srgb,var(--twm-primary) 15%,transparent)}.twm-price-box{margin-top:16px;display:flex;flex-direction:column;gap:6px;padding:16px 20px;border-radius:16px;background:color-mix(in srgb,var(--twm-primary) 15%,#ffffff);border:1px solid color-mix(in srgb,var(--twm-primary) 35%,#ffffff)}.twm-price-box strong{font-size:24px}.twm-price-note{color:var(--twm-muted);font-size:13px}.twm-summary{margin-top:16px;color:var(--twm-muted);display:grid;gap:12px}.twm-summary-item{background:var(--twm-input-bg);border:1px solid var(--twm-border);border-radius:12px;padding:12px 14px;display:grid;gap:6px}.twm-summary-label{font-size:13px;color:var(--twm-muted);font-weight:600}.twm-summary-value{color:var(--twm-text);font-size:14px;word-break:break-word}.twm-nav{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.twm-message{margin-top:16px;padding:12px 16px;border-radius:12px;font-size:14px}.twm-error{background:#fef2f2;color:#991b1b;border:1px solid #fecdd3}.twm-success{background:#ecfdf3;color:#166534;border:1px solid #bbf7d0}.twm-spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(17,24,39,.15);border-top-color:var(--twm-primary);animation:twm-spin 1s linear infinite}.twm-payment{margin-top:20px}.twm-payment-options{display:grid;gap:10px;margin-top:8px}.twm-payment-option{background:#fff;border:1px solid var(--twm-border);border-radius:14px;padding:12px 14px;display:flex;align-items:center;gap:10px;cursor:pointer;text-align:left;font-size:15px;color:var(--twm-text)}.twm-payment-option.is-active{border-color:var(--twm-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--twm-primary) 25%,transparent)}.twm-payment-icon{width:42px;height:28px;display:inline-flex;align-items:center;justify-content:center}.twm-payment-icon img{max-width:100%;height:auto;display:block}.twm-payment-note{margin-top:16px;color:var(--twm-muted)}.twm-hint{margin-top:6px;color:var(--twm-muted);font-size:12px}.twm-map-modal{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;z-index:9999}.twm-map-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#11182759}.twm-map-panel{position:relative;background:var(--twm-surface);border-radius:18px;width:min(680px,90vw);padding:20px;border:1px solid var(--twm-border);box-shadow:0 14px 40px #0f172a1f;display:grid;gap:16px}.twm-map-panel header{display:flex;justify-content:space-between;align-items:center}.twm-map-panel h4{margin:0;font-size:18px}.twm-map-close{background:transparent;border:none;color:var(--twm-text);font-size:24px;cursor:pointer}.twm-map-canvas{height:320px;border-radius:14px;overflow:hidden}.twm-map-panel footer{display:flex;justify-content:flex-end;gap:12px}@keyframes twm-spin{to{transform:rotate(360deg)}}@media (max-width: 640px){.twm-booking-wrapper{padding:0}.twm-step{padding:18px}}.ftb-summary-page{margin-top:24px;display:grid;gap:20px;color:var(--twm-text)}.ftb-summary-card{background:var(--twm-surface);border:1px solid var(--twm-border);border-radius:16px;padding:18px;box-shadow:var(--twm-shadow)}.ftb-summary-header h3{margin:0 0 6px;font-size:20px}.ftb-summary-header p{margin:0 0 14px;color:var(--twm-muted)}.ftb-summary-details{display:grid;gap:10px;margin-bottom:16px}.ftb-summary-row{display:flex;justify-content:space-between;gap:16px;padding:10px 12px;background:var(--twm-input-bg);border:1px solid var(--twm-border);border-radius:12px}.ftb-summary-row span{color:var(--twm-muted);font-size:13px}.ftb-summary-row strong{font-size:14px;text-align:right}.ftb-summary-section h4{margin:0 0 8px;font-size:16px}.ftb-alert-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a;padding:12px 14px;border-radius:12px;font-size:14px}
