:root{--sr-red:#e32228;--sr-ink:#18191c;--sr-muted:#67686f;--sr-line:#e7e7e9;--ink:#18191c;--muted:#67686f;--green:#e32228;--line:#e7e7e9;--bg:#fafafa;background:#fafafa;color:#18191c;color-scheme:light}
.sr-customer{background:#fafafa;color:var(--sr-ink);font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;margin:0}.sr-customer *{box-sizing:border-box}.sr-customer h1,.sr-customer h2,.sr-customer h3{letter-spacing:-.035em}.sr-public-header{background:#fff;border-bottom:1px solid var(--sr-line)}.sr-public-nav{max-width:1180px;margin:auto;padding:21px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px}.sr-public-logo{display:flex;flex-shrink:0}.sr-public-logo img{width:254px;height:auto;max-width:100%;display:block}.sr-public-label{font-size:11px;color:var(--sr-muted);letter-spacing:.04em}.sr-public-action{font-size:12px;font-weight:600;color:var(--sr-ink);text-decoration:none;padding:10px 0;min-height:40px}.sr-public-action span{margin-left:10px;color:var(--sr-red)}.sr-customer a:focus-visible,.sr-customer button:focus-visible,.sr-customer input:focus-visible,.sr-customer textarea:focus-visible{outline:3px solid var(--sr-red);outline-offset:3px}.sr-customer a:hover{color:var(--sr-red)}
/* Public booking screens only; the owner's availability grid retains its own styling. */
.sr-customer .booking-shell{padding-top:30px}.sr-customer .booking-brand{border-color:var(--sr-line);font-size:17px;align-items:center}.sr-customer .booking-brand>span:nth-child(2){min-width:0;overflow-wrap:anywhere}.sr-customer .booking-brand-icon{background:#fff0f0;color:var(--sr-red);border-radius:10px;flex-shrink:0}.sr-customer .booking-location{color:var(--sr-muted);white-space:nowrap}.sr-customer .booking-hero{padding-block:36px 26px}.sr-customer .booking-hero h1{font-size:clamp(30px,4.5vw,48px);line-height:1.16;max-width:680px}.sr-customer .booking-hero p{color:var(--sr-muted)}.sr-customer .booking-hero .booking-eyebrow{color:var(--sr-red);font-size:10px;letter-spacing:.14em}.sr-customer .booking-panel{border-color:var(--sr-line);border-radius:18px;box-shadow:0 8px 30px #18191c04}.sr-customer .booking-panel>strong{color:var(--sr-ink)}.sr-customer .booking-panel a:not(.booking-button){color:var(--sr-red)}.sr-customer .booking-step{background:#fff0f0;color:var(--sr-red)}.sr-customer .booking-button{background:var(--sr-red);border-radius:9px;min-height:48px;transition:background .15s}.sr-customer .booking-button:hover{background:#bf141b;color:white}.sr-customer .booking-secondary{color:var(--sr-red)}.sr-customer .booking-help,.sr-customer .booking-panel hr{border-color:var(--sr-line)}.sr-customer .booking-help,.sr-customer .booking-muted,.sr-customer .booking-empty,.sr-customer .booking-footer{color:var(--sr-muted)}.sr-customer .booking-help strong,.sr-customer .booking-empty h3{color:var(--sr-ink)}.sr-customer .booking-slot span{background:#fff;border-color:#dddde2;color:#42434a;min-width:75px;text-align:center}.sr-customer .booking-slot:hover span{border-color:var(--sr-red);background:#fff5f5}.sr-customer .booking-slot input:checked+span{background:var(--sr-red);border-color:var(--sr-red);color:#fff}.sr-customer .booking-slot input:focus-visible+span{outline-color:var(--sr-red)}.sr-customer input:not([type=radio]):not([type=hidden]),.sr-customer textarea{color:var(--sr-ink);border-color:#d9d9df;min-height:48px}.sr-customer .booking-phone-prefix{background:#f5f5f7;color:#55565e;border-color:#d9d9df}.sr-customer .booking-alert{background:#fff4f4;border-color:#f1c5c7;color:#70252a}.sr-customer .booking-footer{border-top:1px solid var(--sr-line);padding-top:24px}.sr-customer .booking-panel input[type=checkbox]{width:18px;min-height:18px;height:18px;accent-color:var(--sr-red);vertical-align:middle;margin-right:7px}.sr-customer .booking-status-time{color:var(--sr-red)}
/* Public service directory. */
.sr-directory .intro .eyebrow{color:var(--sr-red)}.sr-directory .intro h1{letter-spacing:-.045em}.sr-directory .steps{border-color:var(--sr-line)}.sr-directory .steps>span.reached{color:var(--sr-ink)}.sr-directory .steps .reached b{background:var(--sr-red);color:#fff}.sr-directory .primary{background:var(--sr-red);color:#fff;border-radius:9px}.sr-directory .primary:hover{background:#bf141b;color:white}.sr-directory .city:hover,.sr-directory .choice:hover{border-color:var(--sr-red);background:#fff7f7}.sr-directory .vehicle-art,.sr-directory .service-mark,.sr-directory .shop-icon{background:#fff0f0;color:var(--sr-red)}.sr-directory .vehicle-art svg circle{fill:#fff0f0}.sr-directory .selection-bar a{background:#f1f1f3}.sr-directory .tags span{background:#f5f5f7}.sr-directory .side-panel{border-color:#edb5b8;background:white}.sr-directory .empty-state{border-color:#d9d9df}.sr-directory .location-panel,.sr-directory .choice,.sr-directory .shop-card{border-color:var(--sr-line)}.sr-directory .directory-footer a{color:var(--sr-red)}
/* QR and permanent-link customer portal. */
.sr-portal .shell{padding-top:32px}.sr-portal .site-header{border-color:var(--sr-line)}.sr-portal .site-header p{font-weight:650;overflow-wrap:anywhere}.sr-portal .eyebrow{color:var(--sr-red);font-size:10px;letter-spacing:.14em}.sr-portal .hero{background:var(--sr-ink);border-radius:18px;padding:32px;border-left:5px solid var(--sr-red)}.sr-portal .hero h1{letter-spacing:.01em;overflow-wrap:anywhere}.sr-portal .hero .eyebrow{color:#ff8589}.sr-portal .hero p{color:#d3d3da;font-size:14px;overflow-wrap:anywhere}.sr-portal .card{border-color:var(--sr-line);border-radius:15px;box-shadow:0 6px 20px #18191c03}.sr-portal .invoice-link{transition:border-color .15s,box-shadow .15s}.sr-portal .invoice-link:hover{border-color:#efaeb2;box-shadow:0 8px 25px #e3222808;text-decoration:none;color:var(--sr-ink)}.sr-portal .invoice-link span{color:var(--sr-red);font-size:13px;white-space:nowrap}.sr-portal .invoice-link p{color:var(--sr-muted);font-size:13px}.sr-portal a{color:var(--sr-red)}.sr-portal .invoice-link{color:var(--sr-ink)}.sr-portal .badge{background:#f1f1f3;color:#4c4c55;border-radius:6px}.sr-portal .muted,.sr-portal footer{color:var(--sr-muted)}.sr-portal button{background:var(--sr-red);color:white;border:0;border-radius:9px;min-height:46px;font-size:14px}.sr-portal button:hover{background:#bf141b}.sr-portal th{background:#f7f7f8;color:#585861;font-size:12px}.sr-portal th,.sr-portal td{border-color:var(--sr-line)}.sr-portal .totals{background:#fafafa;border:1px solid var(--sr-line);border-radius:12px;padding:20px;font-size:14px;gap:12px 22px;max-width:100%;width:380px}.sr-portal footer{border-top:1px solid var(--sr-line);margin-top:28px;font-size:11px}.sr-portal .pagination a{padding:10px 14px;border:1px solid var(--sr-line);border-radius:8px;background:white;font-size:13px}.sr-portal .card-top{overflow-wrap:anywhere}
@media(max-width:700px){.sr-public-nav{padding:17px 20px;gap:12px}.sr-public-logo img{width:215px}.sr-public-label{font-size:10px}.sr-public-action{font-size:11px}.sr-customer .booking-shell{padding:23px 18px 32px}.sr-customer .booking-hero{padding-top:28px}.sr-customer .booking-brand{font-size:15px}.sr-customer .booking-panel{padding:23px 20px}.sr-customer .booking-button{width:100%}.sr-customer .booking-slots{gap:8px}.sr-customer .booking-slot span{padding:10px 12px;min-width:67px}.sr-portal .shell{padding:24px 18px}.sr-portal .site-header{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:23px}.sr-portal .site-header p{margin:0;width:100%;font-size:16px}.sr-portal .hero{padding:25px 22px}.sr-portal .card{padding:22px 19px}.sr-portal .invoice-link{gap:12px}.sr-portal .actions{gap:18px}.sr-portal .actions button{width:100%}.sr-portal .totals{font-size:13px;padding:17px;gap:10px 15px}.sr-portal h2{font-size:21px}}
@media(max-width:390px){.sr-public-logo img{width:183px}.sr-public-nav{padding-inline:16px}.sr-public-label{font-size:9px}.sr-public-action{font-size:10px}.sr-public-action span{margin-left:3px}}
@media screen and (max-width:600px){.sr-portal .table-wrap{overflow:visible}.sr-portal table,.sr-portal tbody{display:block}.sr-portal thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.sr-portal tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:13px 12px;padding:20px 0;border-bottom:1px solid var(--sr-line)}.sr-portal td{display:block;border:0;padding:0;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere}.sr-portal td:first-child{grid-column:1/-1;font-size:15px}.sr-portal td:first-child p{font-size:12px;color:var(--sr-muted);margin-bottom:0}.sr-portal td[data-label]{font-size:13px}.sr-portal td[data-label]:before{content:attr(data-label);display:block;color:var(--sr-muted);font-size:10px;margin-bottom:3px}.sr-portal .totals dd{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.sr-customer *{transition:none!important}}
@media print{.sr-public-header{display:none}.sr-portal{background:white;color:black}.sr-portal .hero{background:white;color:black;border:1px solid #ddd}.sr-portal .hero p{color:black}.sr-portal .card{box-shadow:none}.sr-portal .totals{background:white}.sr-portal .table-wrap{overflow:visible}}
