/* MTF 0.1.29: isolated store directory. No product/header/theme selectors. */
.mtf-stores { --mtf-store-ink:#073865; --mtf-store-muted:#506579; --mtf-store-border:#dce5ed; max-width:1200px; margin:0 auto; padding:24px 16px 48px; color:var(--mtf-store-ink); }
.mtf-stores *, .mtf-stores *::before, .mtf-stores *::after { box-sizing:border-box; }
.mtf-stores [hidden] { display:none !important; }
.mtf-stores__intro { background:#f0f6f2; border:1px solid #dce9e0; border-radius:16px; padding:28px; margin-bottom:20px; }
.mtf-stores__eyebrow, .mtf-stores__brand { font-size:.75rem; font-weight:650; text-transform:uppercase; letter-spacing:.065em; color:var(--mtf-store-muted); margin:0 0 10px; }
.mtf-stores h1 { font-size:clamp(1.8rem,4vw,2.5rem); line-height:1.15; margin:0 0 12px; color:var(--mtf-store-ink); }
.mtf-stores__intro > p:last-child { max-width:760px; margin:0; line-height:1.65; color:var(--mtf-store-muted); }
.mtf-stores__controls { display:flex; flex-wrap:wrap; align-items:flex-end; gap:10px; padding:20px; border:1px solid var(--mtf-store-border); border-radius:14px; background:#fff; }
.mtf-stores__search { flex:1 1 280px; min-width:0; }
.mtf-stores__search label { display:block; font-size:.875rem; font-weight:650; margin-bottom:8px; }
.mtf-stores input[type=search] { display:block; width:100%; min-height:46px; padding:10px 12px; color:var(--mtf-store-ink); background:#fff; border:1px solid #879bb2; border-radius:8px; font:inherit; font-size:1rem; }
.mtf-stores__button { display:inline-flex; justify-content:center; align-items:center; gap:8px; min-height:46px; min-width:46px; padding:10px 16px; border:1px solid var(--mtf-store-ink); border-radius:8px; background:var(--mtf-store-ink); color:#fff; text-decoration:none; font:inherit; font-size:.875rem; font-weight:650; line-height:1.4; cursor:pointer; text-align:center; white-space:normal; }
.mtf-stores__button:hover { background:#124c7d; color:#fff; }
.mtf-stores__button--light { background:#fff; color:var(--mtf-store-ink); border-color:#a8bacb; }
.mtf-stores__button--light:hover { background:#edf3f8; color:var(--mtf-store-ink); }
.mtf-stores__button:disabled { opacity:.6; cursor:wait; }
.mtf-stores__privacy { flex:1 0 100%; font-size:.8125rem; line-height:1.6; color:var(--mtf-store-muted); margin:4px 0 0; }
.mtf-stores__coverage { padding:12px 16px; border:1px solid #e5d8b4; background:#fffbf2; border-radius:10px; color:#665227; line-height:1.55; font-size:.875rem; margin:16px 0; }
.mtf-stores__results { display:flex; flex-wrap:wrap; gap:8px; justify-content:space-between; margin:24px 0 12px; font-size:.875rem; font-weight:600; }
.mtf-stores__status { font-size:.875rem; line-height:1.55; color:var(--mtf-store-muted); margin:0 0 16px; }
.mtf-stores__empty { padding:28px; background:#f3f6f9; border-radius:12px; text-align:center; }
.mtf-stores__list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:0; margin:0; list-style:none; }
.mtf-stores__item { min-width:0; list-style:none; margin:0; padding:0; }
.mtf-stores__card { display:flex; flex-direction:column; height:100%; min-width:0; border:1px solid var(--mtf-store-border); border-radius:14px; padding:20px; background:#fff; box-shadow:0 2px 8px #07386508; }
.mtf-stores__card h2 { font-size:1.2rem; line-height:1.3; margin:0 0 12px; color:var(--mtf-store-ink); overflow-wrap:anywhere; }
.mtf-stores address { font-style:normal; line-height:1.6; font-size:.9375rem; margin-bottom:14px; }
.mtf-stores__contacts { margin-top:auto; font-size:.875rem; line-height:1.6; }
.mtf-stores__contacts a { display:block; color:var(--mtf-store-ink); overflow-wrap:anywhere; margin:6px 0; text-underline-offset:3px; }
.mtf-stores__distance { background:#eff5fa; font-size:.8125rem; padding:8px 10px; border-radius:7px; line-height:1.5; margin:0 0 12px; }
.mtf-stores__actions { display:flex; flex-direction:column; gap:8px; margin-top:16px; }
.mtf-stores__footnote { color:var(--mtf-store-muted); line-height:1.6; font-size:.8125rem; margin:24px 0 0; }
.mtf-stores :is(a,button,input):focus-visible { outline:3px solid #4285c5; outline-offset:3px; }
@media (max-width:991.98px) { .mtf-stores__list { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:575.98px) { .mtf-stores { padding:16px 12px 32px; } .mtf-stores__intro { padding:22px 18px; } .mtf-stores__controls { padding:16px; } .mtf-stores__list { grid-template-columns:minmax(0,1fr); gap:12px; } .mtf-stores__controls > button { flex:1 1 110px; } .mtf-stores__card { padding:18px; } }
