.sb-fp-root{max-width:56rem;margin-left:auto;margin-right:auto;padding:1rem 1.5rem;font-family:system-ui,-apple-system,sans-serif;font-size:1rem;line-height:1.5;color:var(--foreground, #1a1a1a)}.sb-fp-root *{box-sizing:border-box}.sb-fp-root{--primary: oklch(.6716 .1368 48.513);--primary-hover: oklch(.5516 .1368 48.513);--border: oklch(.9276 .0058 264.5313);--card: oklch(1 0 0);--muted: oklch(.967 .003 264.54);--muted-foreground: oklch(.551 .023 264.36);--foreground: oklch(.21 .032 264.66);--ring: oklch(.6716 .1368 48.513)}.sb-fp-progress{width:100%;margin-bottom:1.5rem;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.sb-fp-progress::-webkit-scrollbar{display:none}.sb-fp-progress-row{display:flex;align-items:flex-start;justify-content:space-between;min-width:-moz-min-content;min-width:min-content}.sb-fp-step{display:flex;align-items:center;flex:1}.sb-fp-step-inner{display:flex;flex-direction:column;align-items:center;flex:1}.sb-fp-step-circle{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid;font-weight:600;font-size:.875rem}.sb-fp-step-circle.sb-fp-active,.sb-fp-step-circle.sb-fp-completed{border-color:var(--primary);background:var(--primary);color:#fff}.sb-fp-step-circle.sb-fp-pending{border-color:var(--muted-foreground);background:var(--muted);color:var(--muted-foreground)}.sb-fp-step-label{margin-top:.5rem;font-size:.75rem;text-align:center;color:var(--muted-foreground)}.sb-fp-step-label.sb-fp-active{font-weight:600;color:var(--foreground)}.sb-fp-connector{flex:1;height:2px;margin:0 .5rem;margin-top:19px;min-width:8px}.sb-fp-connector.sb-fp-completed{background:var(--primary)}.sb-fp-connector.sb-fp-pending{background:var(--muted-foreground)}.sb-fp-content{margin-top:1.5rem}.sb-fp-title{font-size:1.5rem;font-weight:600;margin:0 0 .25rem;letter-spacing:-.025em;line-height:1.25}.sb-fp-desc{color:var(--muted-foreground);margin:0 0 1rem;font-size:.875rem;white-space:pre-line}.sb-fp-card{border-radius:.5rem;border:1px solid var(--border);background:var(--card);color:var(--foreground);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;transition:box-shadow .15s}.sb-fp-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.sb-fp-card-header{padding:1.5rem 1.5rem .375rem;display:flex;flex-direction:column;gap:.375rem}.sb-fp-card-content{padding:0 1.5rem 1.5rem}.sb-fp-field{margin-bottom:1rem}.sb-fp-label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.sb-fp-input{width:100%;padding:.5rem .75rem;font-size:16px;border:1px solid var(--border);border-radius:.375rem;background:var(--card)}.sb-fp-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 20%,transparent)}textarea.sb-fp-input{min-height:80px;resize:vertical}.sb-fp-btn{height:2.5rem;padding:0 1rem;font-size:.875rem;font-weight:500;border-radius:.375rem;cursor:pointer;border:none;background:var(--primary);color:#fff;display:inline-flex;align-items:center;justify-content:center}.sb-fp-btn:hover:not(:disabled){background:var(--primary-hover)}.sb-fp-btn:disabled{opacity:.6;cursor:not-allowed}.sb-fp-btn-outline{background:transparent;border:1px solid var(--border);color:var(--foreground)}.sb-fp-btn-outline:hover:not(:disabled){background:var(--muted)}.sb-fp-actions{display:flex;gap:.75rem;margin-top:1.5rem}.sb-fp-error{color:#dc2626;font-size:.875rem;margin-top:.5rem}.sb-fp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.sb-fp-service-card{padding:1rem;border:1px solid var(--border);border-radius:.5rem;text-align:left;cursor:pointer;background:var(--card);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;transition:border-color .15s,box-shadow .15s}.sb-fp-service-card:hover{border-color:var(--primary);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.sb-fp-service-name{font-weight:600;margin-bottom:.25rem}.sb-fp-service-desc{font-size:.875rem;color:var(--muted-foreground);margin-bottom:.5rem}.sb-fp-service-meta{font-size:.875rem;color:var(--muted-foreground)}.sb-fp-service-price{font-weight:600;color:var(--primary);margin-left:.5rem}.sb-fp-options{display:flex;flex-wrap:wrap;gap:.5rem}.sb-fp-options-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.sb-fp-option-btn{padding:.5rem .75rem;border:2px solid var(--border);border-radius:.75rem;background:var(--card);cursor:pointer;font-size:.875rem;text-align:left;transition:border-color .15s,background .15s}.sb-fp-option-btn:hover{border-color:var(--muted-foreground);background:var(--muted)}.sb-fp-option-btn.sb-fp-selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--primary)}.sb-fp-option-label{display:block}.sb-fp-option-price{font-size:.75rem;color:var(--muted-foreground);margin-top:.125rem}.sb-fp-calendar-row{display:flex;flex-wrap:nowrap;gap:1.5rem;align-items:flex-start;width:100%}.sb-fp-calendar-row .sb-fp-calendar,.sb-fp-calendar-times{flex:1 1 50%;min-width:0}@media (max-width: 768px){.sb-fp-calendar-row{flex-direction:column}.sb-fp-calendar-row .sb-fp-calendar,.sb-fp-calendar-times{flex:1 1 auto;width:100%}}.sb-fp-calendar-times-list{display:flex;flex-direction:column;gap:.5rem;max-height:320px;overflow-y:auto}.sb-fp-calendar-times-list .sb-fp-time-btn{width:100%;text-align:left;padding:.5rem .75rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}.sb-fp-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.sb-fp-calendar-month{font-weight:600}.sb-fp-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.sb-fp-calendar-dow{font-size:.75rem;color:var(--muted-foreground);text-align:center;padding:.25rem 0}.sb-fp-calendar-cell{aspect-ratio:1}.sb-fp-calendar-day{width:100%;height:100%;border:none;border-radius:6px;background:#fff;cursor:pointer;font-size:.875rem;transition:background .15s}.sb-fp-calendar-day:hover:not(:disabled){background:var(--muted)}.sb-fp-calendar-day.sb-fp-selected{background:var(--primary);color:#fff}.sb-fp-calendar-day.sb-fp-disabled{opacity:.4;cursor:not-allowed}.sb-fp-time-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.sb-fp-time-btn{padding:.5rem .75rem;border:1px solid var(--border);border-radius:.375rem;background:var(--card);cursor:pointer;font-size:.875rem}.sb-fp-time-btn.sb-fp-selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--primary)}.sb-fp-price{margin-top:1.5rem;padding:1.5rem;border:1px solid var(--border);border-radius:.5rem;background:var(--card);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.sb-fp-price-title{font-size:1rem;font-weight:600;margin:0 0 .75rem}.sb-fp-price-row{display:flex;justify-content:space-between;font-size:.875rem;margin-bottom:.25rem}.sb-fp-price-total{font-weight:600;font-size:1rem;margin-top:.5rem}.sb-fp-required{color:#dc2626}.sb-fp-address-autocomplete,.sb-fp-street-wrap{position:relative}.sb-fp-street-wrap .sb-fp-input{padding-right:2.25rem}.sb-fp-loading{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:sb-fp-spin .6s linear infinite}@keyframes sb-fp-spin{to{transform:translateY(-50%) rotate(360deg)}}.sb-fp-suggestions{position:absolute;z-index:50;left:0;right:0;margin-top:2px;background:var(--card);border:1px solid var(--border);border-radius:.375rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;max-height:14rem;overflow-y:auto}.sb-fp-suggestion-item{display:block;width:100%;text-align:left;padding:.5rem .75rem;border:none;background:none;cursor:pointer;font-size:.875rem;color:var(--foreground);transition:background .1s}.sb-fp-suggestion-item:hover,.sb-fp-suggestion-item.sb-fp-suggestion-selected{background:var(--muted)}.sb-fp-suggestion-street{display:block;font-weight:500}.sb-fp-suggestion-meta{display:block;font-size:.75rem;color:var(--muted-foreground);margin-top:.125rem}.sb-fp-suggestion-empty{padding:.5rem .75rem;font-size:.875rem;color:var(--muted-foreground)}.sb-fp-hint{font-size:.75rem;color:var(--muted-foreground);margin-top:.25rem;margin-bottom:0}
