/* Local Mechanic / Service Directory — page styles. Theme tokens. */

@font-face { font-family:"Barlow Cond Fallback"; src:local("Arial Narrow"),local("Roboto Condensed"),local("Arial"); size-adjust:90%; ascent-override:88%; descent-override:20%; line-gap-override:0%; }
@font-face { font-family:"Inter Fallback"; src:local("Arial"); ascent-override:90.44%; descent-override:22.52%; line-gap-override:0%; size-adjust:107.12%; }
.mc-page { font-family:"Inter","Inter Fallback",system-ui,sans-serif; display:block; }
.mc-page .t-display, .mc-page .t-h2, .mc-card__name, .mc-summary strong { font-family:"Barlow Condensed","Barlow Cond Fallback",system-ui,sans-serif; }

/* Input */
.mc-tool { background:var(--color-bg-elevated); border:1px solid var(--color-line); border-radius:14px; padding:1.4rem 1.5rem; }
.mc-row { display:grid; grid-template-columns:1fr; gap:.9rem; }
.mc-cell { display:flex; flex-direction:column; gap:.35rem; }
.mc-cell > span { font-size:.74rem; color:var(--color-ink-2); font-weight:600; }
.mc-input { width:100%; height:2.9rem; border:1px solid var(--color-line-strong); border-radius:.55rem; background:var(--color-bg); padding:0 .7rem; font-size:.97rem; color:var(--color-ink); }
.mc-input:focus { outline:2px solid var(--color-amber-500); outline-offset:1px; }
.mc-chips { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1rem; }
.mc-chip { font-size:.84rem; font-weight:600; padding:.42rem .85rem; border-radius:999px; border:1px solid var(--color-line-strong); background:var(--color-bg); color:var(--color-ink); cursor:pointer; transition:border-color .12s ease, background .12s ease, color .12s ease; }
.mc-chip:hover { border-color:var(--color-amber-500); }
.mc-chip.is-active { background:var(--color-ink); border-color:var(--color-ink); color:#fff; }
.mc-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.8rem; margin-top:1.2rem; }
.mc-status { font-size:.86rem; color:var(--color-ink-2); }

/* Results */
.mc-summary { font-size:.95rem; color:var(--color-ink-2); margin-bottom:1rem; }
.mc-summary strong { color:var(--color-ink); }
.mc-grid { display:grid; grid-template-columns:1fr; gap:.9rem; }
@media (min-width:680px){ .mc-grid { grid-template-columns:1fr 1fr; } }
.mc-card { border:1px solid var(--color-line); border-radius:12px; background:var(--color-bg-elevated); padding:1.05rem 1.2rem; display:flex; flex-direction:column; gap:.35rem; }
.mc-card__head { display:flex; align-items:baseline; justify-content:space-between; gap:.8rem; }
.mc-card__name { font-family:"Barlow Condensed",sans-serif; font-weight:800; font-size:1.3rem; line-height:1.05; color:var(--color-ink); }
.mc-card__dist { flex:0 0 auto; font-family:"JetBrains Mono",monospace; font-size:.8rem; font-weight:700; color:var(--color-amber-700); white-space:nowrap; }
.mc-card__type { align-self:flex-start; font-size:.64rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:#fff; padding:.16rem .5rem; border-radius:999px; background:var(--color-ink); }
.mc-card__type--repair { background:#1a5fd0; }
.mc-card__type--tires { background:#176a48; }
.mc-card__type--parts { background:#9e3f17; }
.mc-card__addr { font-size:.85rem; color:var(--color-ink-2); line-height:1.45; }
.mc-card__links { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.3rem; }
.mc-card__link { font-size:.82rem; font-weight:600; color:var(--color-amber-700); text-decoration:none; border:1px solid var(--color-line); border-radius:999px; padding:.3rem .7rem; transition:border-color .12s ease; }
.mc-card__link:hover { border-color:var(--color-amber-500); }
.mc-more { margin-top:1rem; width:100%; padding:.8rem 1rem; border:1px solid var(--color-line-strong); border-radius:.6rem; background:var(--color-bg); color:var(--color-ink); font-weight:700; font-size:.9rem; cursor:pointer; transition:border-color .12s ease, background .12s ease; }
.mc-more:hover { border-color:var(--color-amber-500); background:var(--color-amber-50); }
.mc-msg { border:1px solid var(--color-line); border-radius:10px; padding:1rem 1.2rem; font-size:.92rem; color:var(--color-ink-2); background:var(--color-bg-elevated); }
.mc-msg--err { border-color:var(--color-amber-300); background:var(--color-amber-50); color:var(--color-amber-700); }

/* Before you book */
.mc-prep { display:grid; grid-template-columns:1fr; gap:0 2.4rem; }
@media (min-width:640px){ .mc-prep { grid-template-columns:1fr 1fr; } }
.mc-prep__item { display:flex; gap:.9rem; padding:1rem 0; border-bottom:1px solid var(--color-line); }
.mc-prep__num { flex:0 0 auto; width:1.7rem; height:1.7rem; border-radius:50%; background:var(--color-ink); color:#fff; font-weight:800; font-size:.85rem; display:flex; align-items:center; justify-content:center; }
.mc-prep__item h3 { font-family:"Barlow Condensed",sans-serif; font-weight:700; font-size:1.15rem; color:var(--color-ink); }
.mc-prep__item p { font-size:.88rem; color:var(--color-ink-2); line-height:1.5; margin-top:.15rem; }

.mc-next { display:grid; grid-template-columns:1fr; gap:.9rem; }
@media (min-width:640px){ .mc-next { grid-template-columns:repeat(3,1fr); } }
.mc-next__card { display:flex; flex-direction:column; gap:.3rem; border:1px solid var(--color-line); border-radius:12px; background:var(--color-bg-elevated); padding:1rem 1.15rem; text-decoration:none; transition:border-color .12s ease, transform .12s ease; }
.mc-next__card:hover { border-color:var(--color-amber-500); transform:translateY(-2px); }
.mc-next__name { font-family:"Barlow Condensed",sans-serif; font-weight:700; font-size:1.2rem; color:var(--color-ink); }
.mc-next__desc { font-size:.85rem; color:var(--color-ink-2); line-height:1.45; }

.mc-source { font-size:.78rem; color:var(--color-ink-muted); margin-top:1.4rem; line-height:1.55; max-width:74ch; }

/* FAQ */
.mc-faq { display:grid; gap:.2rem; max-width:48rem; }
.mc-faq__item { border-bottom:1px solid var(--color-line); padding:.3rem 0; }
.mc-faq__item summary { cursor:pointer; font-weight:600; font-size:1.02rem; padding:.85rem 0; list-style:none; display:flex; justify-content:space-between; gap:1rem; color:var(--color-ink); }
.mc-faq__item summary::-webkit-details-marker { display:none; }
.mc-faq__item summary::after { content:"+"; color:var(--color-ink-muted); font-weight:400; }
.mc-faq__item[open] summary::after { content:"−"; }
.mc-faq__item p { margin:0 0 .9rem; line-height:1.6; max-width:62ch; }
