:root{--brand-primary:#0b4395;--brand-on-primary:#fff;--page:#f8fafc;--surface:#fff;--border:#e2e8f0;--border-subtle:#f1f5f9;--border-strong:#cbd5e1;--text:#0f172a;--text-muted:#475569;--attention-tint:#fef3c7;--attention-ink:#78350f;--support-banner:#facc15;--support-banner-ink:#1c1917;--shadow-card:0 1px 3px #0000001f, 0 1px 2px #0000003d;--shadow-raised:0 3px 6px #00000029, 0 3px 6px #0000003b;color:var(--text);background:var(--page);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji}:root,.dealer-frame{--brand-ink:var(--brand-primary);--brand-ink-hover:color-mix(in srgb, var(--brand-ink) 77%, #000);--brand-tint:color-mix(in srgb, var(--brand-primary) 4%, #fff)}body{margin:0}h1{letter-spacing:-.01em;font-size:1.75rem;font-weight:600}h2{font-size:1.25rem;font-weight:600}a{color:var(--brand-ink)}a:not(.button,.greeting-action):hover{color:var(--brand-ink-hover)}:focus-visible{outline:2px solid var(--brand-ink);outline-offset:2px}.dealer-frame{flex-direction:column;min-height:100vh;display:flex}.page{box-sizing:border-box;width:100%;max-width:43rem;margin:0 auto;padding:1.5rem}.dealer-list{gap:.5rem;padding:0;list-style:none;display:grid}.dealer-header{background:var(--surface);border-bottom:1px solid var(--border)}.dealer-header-bar{box-sizing:border-box;justify-content:space-between;align-items:center;gap:1rem;max-width:73rem;min-height:4rem;margin:0 auto;padding:0 1.5rem;display:flex}.dealer-logo{object-fit:contain;object-position:left center;min-width:0;max-width:50%;max-height:2.5rem}.dealer-name{overflow-wrap:anywhere;letter-spacing:-.01em;min-width:0;color:var(--brand-ink);font-size:1.1875rem;font-weight:700}.dealer-product{color:var(--text-muted);flex:none;font-size:.875rem;font-weight:500}.customer-bar{align-items:center;gap:.625rem;min-width:0;display:flex}.customer-bar .button{flex:none}.customer-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.875rem;font-weight:500;overflow:hidden}@media (width<=30rem){.customer-name{display:none}}.button,.button-text{font:inherit;cursor:pointer}.button{box-sizing:border-box;border:1px solid var(--brand-primary);background:var(--brand-primary);min-height:2.75rem;color:var(--brand-on-primary);border-radius:.75rem;justify-content:center;align-items:center;padding:0 1.25rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.button-secondary{border-color:var(--brand-ink);background:var(--surface);color:var(--brand-ink)}.button-small{border-radius:.5rem;min-height:2.25rem;padding:0 1rem;font-size:.8125rem}.button-text{color:var(--brand-ink);background:0 0;border:none;padding:.5rem 0;text-decoration:underline}.button:disabled,.button-text:disabled{opacity:.6;cursor:default}.actions{flex-wrap:wrap;gap:.625rem;display:flex}.bankid-panel{flex-direction:column;align-items:center;gap:.75rem;padding:1rem;display:flex}.bankid-qr{background:#fff;padding:.75rem}.note{color:var(--text-muted);font-size:.875rem}.test-sign-in{border-top:1px dashed var(--border-strong);margin-top:2rem;padding-top:1rem}.test-sign-in form{gap:.75rem;max-width:24rem;display:grid}.test-sign-in label{gap:.25rem;display:grid}.test-sign-in input{font:inherit;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:.625rem;padding:.5rem}.my-page{box-sizing:border-box;width:100%;max-width:73rem;margin:0 auto;padding:2rem 1.5rem 3.5rem}.my-page h1,:where(.my-page) p{margin:0}.my-page h1+p{color:var(--text-muted);margin-top:.375rem;font-size:.9375rem}.my-page-section{flex-direction:column;gap:1rem;margin-top:2.5rem;display:flex}.my-page-section h2{margin:0}.my-page-section>p{color:var(--text-muted);font-size:.9375rem}.initials{background:var(--brand-tint);width:2.25rem;height:2.25rem;color:var(--brand-ink);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.8125rem;font-weight:600;display:inline-flex}.card{box-sizing:border-box;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-card);border-radius:1rem}.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,25rem),1fr));gap:1.25rem;display:grid}.cars{grid-template-columns:repeat(auto-fit,minmax(min(100%,27.5rem),1fr))}.booking-cards{scroll-snap-type:x mandatory;grid-auto-columns:minmax(17rem,1fr);grid-auto-flow:column;gap:1rem;margin:0;padding:0 0 .25rem;list-style:none;display:grid;overflow-x:auto}.booking-card{scroll-snap-align:start;flex-direction:column;gap:.375rem;padding:1.25rem;display:flex}.booking-card-next{border:2px solid var(--brand-primary)}.booking-card-top{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.booking-card-top .eyebrow{min-width:0}.booking-next{background:var(--brand-primary);color:var(--brand-on-primary);border-radius:9999px;margin-right:.5rem;padding:0 .5rem;display:inline-block}.booking-when{background:var(--brand-tint);color:var(--brand-ink);white-space:nowrap;border-radius:9999px;padding:.125rem .625rem;font-size:.8125rem;font-weight:600}.booking-date{font-size:1.125rem;font-weight:700}.booking-time{color:var(--text-muted)}.booking-time>span+span:before{content:"·";margin:0 .5rem}.booking-subject{font-weight:500}.booking-car{color:var(--text-muted);font-size:.875rem}.booking-card .actions{margin-top:auto;padding-top:.5rem}.booking-empty{flex-direction:column;justify-content:center;align-items:flex-start;gap:.75rem;padding:1.25rem;display:flex}.booking-empty .booking-subject{font-size:1.375rem;font-weight:600}.booking-last-service{color:var(--text-muted);font-size:.875rem}.booking-empty .button{box-shadow:var(--shadow-card);padding:0 1.5rem}.facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0;display:grid}.facts dt{color:var(--text-muted);font-size:.75rem}.facts dd{margin:.125rem 0 0;font-size:.875rem;font-weight:500}.my-page h1+.greeting-summary{color:var(--text);font-size:1.0625rem}.greeting-actions{flex-wrap:wrap;gap:.5rem;margin-top:1.25rem;display:flex}.greeting-action{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:999px;align-items:center;gap:.5rem;padding:.625rem 1rem;font-weight:500;text-decoration:none;display:inline-flex}.greeting-action:hover{border-color:var(--brand-ink)}.greeting-action:first-child{border-color:var(--brand-primary);background:var(--brand-primary);color:var(--brand-on-primary)}.contact{align-items:flex-start;gap:1.25rem;padding:1.5rem;display:flex}.contact-photo,.contact .initials{border-radius:50%;flex:none;width:6rem;height:6rem}.contact-photo{object-fit:cover}.contact .initials{font-size:1.75rem}.contact-details{flex-direction:column;flex:1;gap:.75rem;min-width:0;display:flex}.eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--brand-ink);margin:0;font-size:.75rem;font-weight:600}.contact-name{margin-top:.25rem;font-size:1.1875rem;font-weight:600}.contact-title{color:var(--text-muted);margin-top:.125rem;font-size:.8125rem}.contact-links{flex-direction:column;align-items:flex-start;gap:.25rem;font-size:.875rem;display:flex}.contact-links a{overflow-wrap:anywhere;text-decoration:none}.contact .actions{gap:.5rem}.car{flex-direction:column;gap:1.125rem;padding:1.25rem;display:flex}.car-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.car-title{flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;display:flex}.car-name{font-size:1.25rem;font-weight:600}.badge{background:var(--brand-tint);color:var(--brand-ink);border-radius:.5rem;padding:.125rem .5rem;font-size:.6875rem;font-weight:600}.plate{border:1.5px solid var(--text);letter-spacing:.08em;border-radius:.25rem;flex:none;padding:.125rem .5rem;font-size:.8125rem;font-weight:700}.visits{margin:0;padding:.5rem 1.5rem;list-style:none}.visit{grid-template-columns:4.5rem minmax(0,1fr);gap:1.25rem;padding:1rem 0;display:grid}.visit+.visit{border-top:1px solid var(--border-subtle)}.visit-date{align-content:start;display:grid}.visit-day{font-size:1.0625rem;font-weight:600}.visit-year{color:var(--text-muted);font-size:.75rem}.visit-details{flex-direction:column;gap:.25rem;min-width:0;display:flex}.visit-subject{font-size:.9375rem;font-weight:500}.visit-meta{color:var(--text-muted);font-size:.8125rem}.my-page-footer{border-top:1px solid var(--border);background:var(--surface);margin-top:auto}.my-page-footer-text{box-sizing:border-box;max-width:73rem;color:var(--text-muted);margin:0 auto;padding:1.25rem 1.5rem;font-size:.8125rem}.notice{background:var(--attention-tint);color:var(--attention-ink);border-radius:.5rem;margin:0;padding:.625rem .75rem;font-size:.8125rem;font-weight:500}.tire-storage{border-top:1px solid var(--border-subtle);flex-direction:column;gap:.625rem;padding-top:1rem;display:flex}.tire-storage-summary{font-size:.875rem;font-weight:500}.agreement-counts{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.75rem;margin:0 0 .75rem;display:grid}.agreement-count dt{color:var(--text-muted);font-size:.875rem}.agreement-count dd{margin:0;font-size:1.25rem;font-weight:700}.agreement-rows{margin:0;padding:.25rem 0;list-style:none}.agreement-row{flex-wrap:wrap;align-items:center;gap:.375rem 1rem;padding:.75rem 1.25rem;display:flex}.agreement-row+.agreement-row{border-top:1px solid var(--border-subtle)}.agreement-name{flex:10rem;min-width:0;font-weight:600}.agreement-amount,.agreement-end{color:var(--text-muted);font-size:.875rem}.agreement-label{background:var(--brand-tint);color:var(--brand-ink);white-space:nowrap;border-radius:999px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.agreement-label-soon{background:var(--attention-tint);color:var(--attention-ink)}.reminders{margin:0;padding:.25rem 0;list-style:none}.reminder{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem 1.25rem;display:grid}.reminder+.reminder{border-top:1px solid var(--border-subtle)}.reminder-dot{background:var(--border-strong);border-radius:50%;width:.625rem;height:.625rem}.reminder-urgent .reminder-dot{background:#c2410c}.reminder-notice .reminder-dot{background:#d97706}.reminder-text{flex-wrap:wrap;align-items:center;gap:.375rem .75rem;display:flex}@media (width<=30rem){.reminder{grid-template-columns:auto minmax(0,1fr)}.reminder .button{grid-column:2;justify-self:start}}.car-labels{flex-wrap:wrap;gap:.375rem;display:inline-flex}.car-label{white-space:nowrap;border-radius:999px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.car-label-urgent{color:#991b1b;background:#fee2e2}.car-label-notice{background:var(--attention-tint);color:var(--attention-ink)}.car-row-name{font-weight:600}.fleet{flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.fleet-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.fleet-facts{flex-direction:column;gap:.25rem;display:flex}.fleet-count{font-size:1.25rem;font-weight:700}.fleet-fact,.car-row-facts{color:var(--text-muted);font-size:.875rem}.fleet-urgent{margin:0;padding:0;list-style:none}.fleet-urgent li{flex-wrap:wrap;align-items:center;gap:.375rem 1rem;padding:.5rem 0;display:flex}.fleet-urgent li+li{border-top:1px solid var(--border-subtle)}.back-link{margin-bottom:1rem;font-weight:500;display:inline-block}.car-list-tools{flex-wrap:wrap;align-items:center;gap:1rem;margin:1rem 0 1.25rem;display:flex}.car-list-search{box-sizing:border-box;border:1px solid var(--border-strong);background:var(--surface);width:100%;max-width:22rem;font:inherit;border-radius:.5rem;padding:.625rem .75rem}.car-list-check{align-items:center;gap:.375rem;font-size:.875rem;display:flex}.car-rows{margin:0;padding:.25rem 0;list-style:none}.car-row{grid-template-columns:6.5rem minmax(0,1fr) auto auto;align-items:center;gap:.5rem 1rem;padding:.75rem 1.25rem;display:grid}.car-row+.car-row{border-top:1px solid var(--border-subtle)}.car-row-what{flex-direction:column;gap:.125rem;min-width:0;display:flex}@media (width<=48rem){.car-row{grid-template-columns:6.5rem minmax(0,1fr)}.car-row .car-labels,.car-row .button{grid-column:2;justify-self:start}}.visit-lines{margin-top:.375rem;font-size:.8125rem}.visit-lines summary{color:var(--brand-ink);cursor:pointer;font-weight:500}.visit-lines ul{margin:.5rem 0 0;padding:0;list-style:none}.visit-lines p{margin:.5rem 0 0}.visit-lines li{justify-content:space-between;gap:1rem;padding:.25rem 0;display:flex}.visit-line-kind{color:var(--text-muted)}.visit-line-price{font-variant-numeric:tabular-nums;flex:none}.visit-lines-total{border-top:1px solid var(--border-subtle);margin-top:.25rem;font-weight:600}.support-banner{background:var(--support-banner);color:var(--support-banner-ink)}.support-banner-bar{box-sizing:border-box;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;max-width:73rem;margin:0 auto;padding:.5rem 1.5rem;display:flex}.support-banner-title{flex:auto;margin:0;font-size:.875rem;font-weight:700}.support-notice{box-sizing:border-box;max-width:73rem;margin:0 auto;padding:.75rem 1.5rem 0}.support-search{gap:.5rem;min-width:0;display:flex}.support-search input{border:1px solid var(--border-strong);width:14rem;min-width:0;font:inherit;border-radius:.5rem;padding:0 .75rem;font-size:.875rem}.support-banner .button-secondary{border-color:var(--support-banner-ink);color:var(--support-banner-ink)}.support-hits{gap:.5rem;padding:0;list-style:none;display:grid}.support-hit{color:var(--text);flex-direction:column;gap:.375rem;padding:1rem 1.25rem;text-decoration:none;display:flex}.support-hit-name{color:var(--brand-ink);font-weight:600}.support-hit-contact,.support-hit-car{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.support-more-customers{margin-top:.75rem;font-size:.875rem;font-weight:600;display:inline-block}
