@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;900&display=swap");:root{--red:#8B0000;--red-soft:#fef2f2;--red-soft-border:#fca5a5;--green-soft:#f0fdf4;--green-text:#16a34a;--black:#111;--white:#fff;--card-border:#eee;--muted:#888}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--white);color:var(--black);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--red)}.provider-page{max-width:640px;margin:0 auto}.provider-banner{background:var(--red);color:var(--white)}.provider-cover-photo{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.provider-banner-text{text-align:center;padding:20px 16px 24px}.provider-banner h1{font-size:24px;font-weight:900;margin:0 0 4px;color:var(--white)}.provider-category{font-weight:600;font-size:14px;margin:0;text-transform:uppercase;letter-spacing:.04em;color:rgba(255,255,255,.85)}.provider-body{padding:20px 16px 48px}.provider-location{color:var(--muted);font-size:14px;margin:0 0 12px;text-align:center}.provider-description{font-size:15px;line-height:1.5;color:var(--black);margin:0 auto 8px;max-width:480px;text-align:center}.section{margin-top:28px}.section h2{font-size:16px;font-weight:800;color:var(--black);border-bottom:2px solid var(--red);display:inline-block;padding-bottom:6px;margin:0 0 14px}.menu-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.menu-item{background:var(--white);border:1px solid var(--card-border);border-radius:12px;padding:0;overflow:hidden}.menu-item-trigger{display:flex;width:100%;border:none;background:none;padding:14px 16px;margin:0;text-align:left;cursor:pointer;font:inherit;color:inherit}.menu-item>div.menu-item-row{padding:14px 16px}.menu-item-row{display:flex;gap:12px;align-items:flex-start}.menu-item-photo{width:48px;height:48px;border-radius:10px;object-fit:cover;flex-shrink:0}.menu-item-main{flex:1 1;min-width:0}.menu-item-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.menu-item-name{font-weight:700;font-size:15px;color:var(--black)}.menu-item-description{color:var(--muted);font-size:13px;margin:4px 0 6px}.menu-item-price{color:var(--red);font-weight:700;font-size:14px}.badge{font-size:11px;font-weight:700;padding:4px 10px;border-radius:8px;white-space:nowrap}.badge-open{background:var(--red-soft);color:var(--red);border:1px solid var(--red-soft-border)}.badge-muted{background:#f3f4f6;color:#9ca3af}.item-times{padding:4px 16px 16px;border-top:1px solid var(--card-border)}.day-group{margin-bottom:16px}.day-group:last-child{margin-bottom:0}.day-group h3{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:12px 0 8px}.slot-row{display:flex;flex-wrap:wrap;gap:8px}.time-chip{background:var(--red-soft);border:1px solid var(--red-soft-border);color:var(--red);font-weight:600;font-size:13px;padding:7px 12px;border-radius:8px;cursor:pointer;font-family:inherit}.time-chip-selected{background:var(--red);border-color:var(--red);color:var(--white)}.support-page{max-width:560px;margin:0 auto;padding:48px 20px}.support-card{background:var(--white);border:1px solid var(--card-border);border-radius:16px;padding:32px 28px;text-align:center}.support-card h1{margin:0 0 16px;font-size:26px;font-weight:900}.support-story{color:#444;font-size:15px;line-height:1.7;margin:0 0 24px;text-align:left}.support-frequency-toggle{display:inline-flex;background:#f5f5f5;border-radius:999px;padding:4px;margin-bottom:20px}.support-frequency-btn{background:transparent;border:none;color:var(--muted);border-radius:999px;padding:8px 18px;font-size:14px;font-weight:700;cursor:pointer}.support-frequency-btn.active{background:var(--white);color:var(--red);box-shadow:0 1px 3px rgba(0,0,0,.1)}.support-amounts{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:16px}.support-amount-chip{background:var(--white);border:1.5px solid var(--card-border);color:var(--black);border-radius:999px;padding:10px 20px;font-size:15px;font-weight:700;cursor:pointer}.support-amount-chip.active{background:var(--red);border-color:var(--red);color:var(--white)}.support-custom-row{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:16px}.support-custom-dollar{font-size:18px;font-weight:700;color:var(--muted)}.support-custom-input{border:1.5px solid var(--card-border);border-radius:10px;padding:10px 14px;font-size:15px;width:140px}.support-error{color:var(--red);font-size:13px;margin:0 0 12px}.support-donate-btn{margin-bottom:16px}.support-note{color:var(--muted);font-size:12px;margin:0}.btn-primary{display:block;width:100%;background:var(--red);color:var(--white);border:none;border-radius:10px;padding:13px;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit}.continue-btn{margin-top:14px}.btn-link{display:block;width:100%;text-align:center;background:none;border:none;color:var(--muted);font-size:13px;font-weight:600;padding:10px 0 0;cursor:pointer;font-family:inherit}.confirm-panel{text-align:center;padding:4px 0}.confirm-service{font-weight:700;font-size:15px;color:var(--black);margin:0}.confirm-when{color:var(--red);font-weight:600;font-size:13px;margin:4px 0 2px}.confirm-price{color:var(--muted);font-size:13px;margin:0 0 16px}.confirm-note{color:var(--muted);font-size:12px;line-height:1.5;margin:10px 0 0}.slot-chip{background:var(--white);border:1px solid var(--card-border);border-radius:10px;padding:8px 12px;display:flex;flex-direction:column;min-width:100px}.slot-time{font-weight:700;font-size:14px;color:var(--black)}.slot-service{color:var(--muted);font-size:12px;margin:2px 0}.slot-price{color:var(--red);font-weight:600;font-size:13px}.slot-chip-held{opacity:.75;cursor:default}.slot-held-label{color:var(--muted);font-size:11px;font-style:italic;margin-top:2px}.slot-chip-mine{border-color:var(--red)}.slot-mine-label{color:var(--red);font-size:11px;font-weight:700;margin-top:2px}.hold-countdown{background:var(--red-soft);border:1px solid var(--red-soft-border);color:var(--red);font-size:12px;font-weight:600;border-radius:8px;padding:8px 10px;margin:0 0 12px;text-align:center}.hold-countdown-urgent{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.muted{color:var(--muted);font-size:14px}.muted.small{font-size:12px;text-align:center;margin-top:36px}.confirm-success-title{color:var(--green-text);font-weight:800;font-size:16px;margin:0 0 6px}.price-breakdown{text-align:left;background:#f9f9f9;border-radius:10px;padding:12px 14px;margin:12px 0 16px}.price-row{display:flex;justify-content:space-between;font-size:14px;color:var(--black);padding:3px 0}.price-row-muted{color:var(--muted);font-size:13px}.price-row-total{border-top:1px solid var(--card-border);margin-top:4px;padding-top:8px;font-weight:800;color:var(--red)}.field-label{display:block;text-align:left;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:12px}.field-input{display:block;width:100%;margin-top:5px;border:1px solid var(--card-border);border-radius:8px;padding:10px 12px;font-size:15px;font-family:inherit;color:var(--black);background:var(--white)}.field-input:focus{outline:2px solid var(--red);outline-offset:-1px}.field-error{color:#b91c1c;background:var(--red-soft);border:1px solid var(--red-soft-border);border-radius:8px;padding:8px 10px;font-size:13px;margin:0 0 12px}.slot-chip-wrap{display:flex;flex-direction:column;min-width:140px}.slot-chip-button{border:1px solid var(--card-border);cursor:pointer;font-family:inherit;text-align:left;width:100%}.slot-chip-button:hover{border-color:var(--red-soft-border)}.desktop-qr{display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 0}.desktop-qr-caption{color:var(--muted);font-size:13px;margin:0}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:#f9f9f9}.auth-card{width:100%;max-width:400px;background:var(--white);border:1px solid var(--card-border);border-radius:14px;padding:28px 24px}.auth-title{font-size:20px;font-weight:900;color:var(--black);margin:0 0 6px}.auth-subtitle{line-height:1.5;margin:0 0 20px}.auth-footer,.auth-subtitle{font-size:13px;color:var(--muted)}.auth-footer{text-align:center;margin:16px 0 0}.wizard-page{min-height:100vh;background:#f9f9f9;padding:0 0 48px}.wizard-header{background:var(--red);color:var(--white);padding:20px 16px;text-align:center}.wizard-steps{display:flex;justify-content:center;gap:6px;margin-top:10px}.wizard-step-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.35)}.wizard-step-dot-active{background:var(--white)}.wizard-body{max-width:480px;margin:0 auto;padding:24px 16px}.wizard-card{background:var(--white);border:1px solid var(--card-border);border-radius:14px;padding:24px}.wizard-step-title{font-size:18px;font-weight:800;color:var(--black);margin:0 0 4px}.wizard-step-subtitle{font-size:13px;color:var(--muted);margin:0 0 20px;line-height:1.5}.wizard-nav{display:flex;gap:10px;margin-top:20px}.wizard-nav .btn-primary{flex:1 1}.btn-secondary{flex:1 1;background:var(--white);color:var(--red);border:1.5px solid var(--red);border-radius:10px;padding:13px;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit}.toggle-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.toggle-row-label{font-size:13px;font-weight:600;color:var(--black)}.field-row{display:flex;flex-wrap:wrap;gap:10px}.field-row>.field-label{flex:1 1 120px;min-width:0}.day-pill-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.day-pill{border:1.5px solid var(--card-border);border-radius:20px;padding:7px 12px;background:var(--white);cursor:pointer;font-family:inherit;font-size:12px;font-weight:700;color:var(--muted)}.day-pill-active{border-color:var(--red);background:var(--red-soft);color:var(--red)}.choice-grid{display:flex;flex-wrap:wrap;gap:10px}.choice-btn{flex:1 1 140px;min-width:0;border:1.5px solid var(--card-border);border-radius:12px;padding:14px;background:var(--white);cursor:pointer;font-family:inherit;text-align:left}.choice-btn-active{border-color:var(--red);background:var(--red-soft)}.choice-btn-title{font-size:14px;font-weight:700;color:var(--black);margin:0 0 2px}.choice-btn-sub{font-size:11px;color:var(--muted);margin:0}.dash-shell{min-height:100vh;background:#f9f9f9}.dash-header{background:var(--red);color:var(--white);padding:16px;display:flex;align-items:center;justify-content:space-between}.dash-header h1{font-size:16px;font-weight:800;margin:0}.dash-tabs{display:flex;overflow-x:auto;background:var(--white);border-bottom:1px solid var(--card-border);position:-webkit-sticky;position:sticky;top:0;z-index:5}.dash-tab{flex-shrink:0;padding:13px 16px;font-size:13px;font-weight:700;color:var(--muted);background:none;cursor:pointer;font-family:inherit;border:none;border-bottom:2px solid transparent}.dash-tab-active{color:var(--red);border-bottom-color:var(--red)}.dash-body{max-width:720px;margin:0 auto;padding:20px 16px 60px}.dash-card{background:var(--white);border:1px solid var(--card-border);border-radius:12px;padding:16px;margin-bottom:12px}.dash-card-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.dash-empty{text-align:center;color:var(--muted);font-size:13px;padding:40px 16px}.pill{display:inline-block;font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px}.pill-booked{background:var(--red-soft);color:var(--red)}.pill-done{background:var(--green-soft);color:var(--green-text)}.pill-cancelled{background:#f3f4f6;color:#9ca3af}.chat-thread{display:flex;flex-direction:column;height:70vh;max-height:600px;background:var(--white);border:1px solid var(--card-border);border-radius:12px;overflow:hidden}.chat-messages{flex:1 1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px}.chat-bubble-row{display:flex;justify-content:flex-start}.chat-bubble-row-mine{justify-content:flex-end}.chat-bubble{max-width:75%;background:#f3f4f6;color:var(--black);padding:9px 13px;border-radius:14px 14px 14px 2px;font-size:14px;line-height:1.4;word-break:break-word}.chat-bubble-mine{background:var(--red);color:var(--white);border-radius:14px 14px 2px 14px}.chat-bubble-image{max-width:200px;max-height:200px;border-radius:10px;display:block}.chat-input-row{display:flex;align-items:center;gap:8px;padding:10px 12px;border-top:1px solid var(--card-border)}.chat-attach-btn{background:none;border:none;font-size:20px;cursor:pointer;flex-shrink:0;padding:4px}.chat-text-input{flex:1 1;margin:0}.chat-send-btn{width:auto;flex-shrink:0;padding:10px 16px}.explore-page{max-width:1080px;margin:0 auto;padding:24px 16px 48px}.explore-header h1{font-size:22px;font-weight:800;color:var(--black);margin:0 0 14px}.explore-breadcrumb{font-size:13px;color:var(--muted);margin:0 0 6px}.explore-breadcrumb a{color:var(--red);text-decoration:none}.explore-search-form{display:flex;gap:10px;margin-bottom:14px}.explore-search-input{flex:1 1;min-width:0;border:1.5px solid var(--card-border);border-radius:10px;padding:13px 16px;font-size:15px;font-family:inherit;color:var(--black);background:var(--white)}.explore-search-input:focus{outline:2px solid var(--red);outline-offset:-1px}.explore-search-btn{flex:0 0 auto;width:auto;padding:0 20px}.explore-category-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.explore-category-pill{display:inline-block;border:1.5px solid var(--card-border);border-radius:20px;padding:7px 14px;font-size:13px;font-weight:600;color:var(--black);text-decoration:none;background:var(--white)}.explore-category-pill:hover{border-color:var(--red);color:var(--red)}.explore-ai-section{background:var(--red-soft);border:1px solid var(--red-soft-border);border-radius:14px;padding:16px;margin-bottom:24px}.explore-ai-banner{font-size:13px;font-weight:700;color:var(--red);margin:0 0 12px}.explore-results-label{font-size:13px;color:var(--muted);margin:0 0 12px}.explore-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:16px}.explore-near-btn{width:auto;flex:0 0 auto;padding:8px 16px;font-size:13px}.explore-location-error{font-size:12px;color:var(--muted)}.explore-empty{text-align:center;padding:48px 16px}.explore-grid{display:grid;grid-template-columns:1fr;grid-gap:14px;gap:14px}@media (min-width:640px){.explore-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:960px){.explore-grid{grid-template-columns:repeat(3,1fr)}}.explore-card{display:flex;flex-direction:column;border:1px solid var(--card-border);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;background:var(--white);transition:border-color .15s}.explore-card:hover{border-color:var(--red)}.explore-card-photo{width:100%;height:140px;object-fit:cover;background:var(--red-soft)}.explore-card-photo-fallback{display:flex;align-items:center;justify-content:center;font-size:32px}.explore-card-body{padding:14px}.explore-card-name{font-size:15px;font-weight:700;color:var(--black);margin:0 0 2px}.explore-card-category{font-size:12px;font-weight:600;color:var(--red);margin:0 0 6px}.explore-card-location{font-size:12px;color:var(--muted);margin:0 0 8px}.explore-card-distance{color:var(--red);font-weight:600}.explore-card-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}.explore-card-price{font-weight:700;color:var(--black)}.explore-card-next{color:var(--muted)}.ai-search-form{display:flex;gap:10px}.ai-search-input{flex:1 1;min-width:0;border:1.5px solid var(--card-border);border-radius:10px;padding:13px 16px;font-size:15px;font-family:inherit;color:var(--black);background:var(--white)}.ai-search-input:focus{outline:2px solid var(--red);outline-offset:-1px}.ai-search-btn{flex:0 0 auto;width:auto;padding:0 20px}.ai-search-results{margin-top:14px}.ai-search-reply{font-size:14px;color:var(--black);margin:0 0 12px}.ai-search-card{display:block;border:1px solid var(--card-border);border-radius:12px;padding:12px 14px;margin-bottom:10px;text-decoration:none;color:inherit;background:var(--white)}.ai-search-card:hover{border-color:var(--red)}.ai-search-card-name{font-size:14px;font-weight:700;color:var(--black);margin:0 0 2px}.ai-search-card-reason{font-size:12px;color:var(--muted);margin:0 0 6px}.ai-search-card-slot{font-size:12px;color:var(--black);margin:2px 0}