/* EQM My Factory. Every rule sits under .eqm-mf because the theme (XStore) styles every button, input and p.
   Colours are the site's own (measured 9 Oct 2026); fonts are inherited from the theme. */
.eqm-mf { --mf-green: #078b35; --mf-ink: #111; --mf-text: #555; --mf-muted: #777; --mf-line: #e1e1e1; --mf-soft: #f7f7f7;
  --mf-mint: #eef6f1; --mf-due: #b45309; --mf-due-soft: #fdf3e7; --mf-r: 10px; color: var(--mf-text); }
.eqm-mf * { box-sizing: border-box; }
.eqm-mf a { color: var(--mf-green); text-decoration: none; }
.eqm-mf a:hover { text-decoration: underline; }
.eqm-mf h2, .eqm-mf h3, .eqm-mf h4 { color: var(--mf-ink); margin: 0; letter-spacing: 0; text-transform: none; }
.eqm-mf p { margin: 0 0 12px; }
.eqm-mf img { max-width: 100%; display: block; }
.eqm-mf form { margin: 0; }

/* buttons: reset the theme's, then the site's black and outline shapes */
.eqm-mf button, .eqm-mf .eqm-mf__btn { font: inherit; letter-spacing: 0; box-shadow: none; height: auto; line-height: 1.2; margin: 0; }
.eqm-mf .eqm-mf__btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 22px;
  border-radius: var(--mf-r); border: 2px solid #000; font-size: 15px; font-weight: 500; text-transform: uppercase; cursor: pointer; white-space: nowrap; text-decoration: none; }
.eqm-mf .eqm-mf__btn--primary { background: #000; color: #fff; }
.eqm-mf .eqm-mf__btn--primary:hover { background: #333; color: #fff; text-decoration: none; }
.eqm-mf .eqm-mf__btn--second { background: #fff; color: #000; }
.eqm-mf .eqm-mf__btn--second:hover { background: var(--mf-soft); color: #000; text-decoration: none; }
.eqm-mf .eqm-mf__btn--green { background: var(--mf-green); border-color: var(--mf-green); color: #fff; }
.eqm-mf .eqm-mf__btn--small { min-height: 38px; padding: 0 14px; font-size: 13px; }
.eqm-mf .eqm-mf__btn--big { min-height: 52px; padding: 0 28px; font-size: 16px; }
.eqm-mf .eqm-mf__textbtn { background: none; border: 0; padding: 0; color: var(--mf-green); font-size: 14px; font-weight: 500; cursor: pointer; text-transform: none; min-height: 0; }
.eqm-mf .eqm-mf__textbtn:hover { text-decoration: underline; background: none; }
.eqm-mf .eqm-mf__textbtn.is-quiet { color: var(--mf-muted); font-weight: 400; }
.eqm-mf__inline { display: inline-block; }

/* fields */
.eqm-mf .eqm-mf__field { display: block; margin: 0 0 12px; }
.eqm-mf .eqm-mf__field > span { display: block; font-size: 13px; font-weight: 500; color: var(--mf-ink); margin-bottom: 5px; }
.eqm-mf input[type=text], .eqm-mf input[type=search], .eqm-mf input[type=number], .eqm-mf input[type=date], .eqm-mf select {
  width: 100%; height: 44px; border: 1px solid var(--mf-line); border-radius: var(--mf-r); padding: 0 12px; font-size: 16px; color: var(--mf-ink); background: #fff; margin: 0; max-width: none; }
.eqm-mf__pair { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
.eqm-mf__add { margin: 18px 0; }
.eqm-mf__add > summary { cursor: pointer; color: var(--mf-green); font-weight: 500; font-size: 14px; list-style: none; display: inline-block; }
.eqm-mf__add > summary::-webkit-details-marker { display: none; }
.eqm-mf__add[open] > summary { margin-bottom: 12px; }
.eqm-mf__addform { max-width: 520px; }

/* page head */
.eqm-mf__back { display: inline-block; font-size: 14px; margin-bottom: 14px; }
.eqm-mf__back--phone { display: none; }
.eqm-mf__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; flex-wrap: wrap; margin-bottom: 22px; }
.eqm-mf__kicker { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--mf-green); margin-bottom: 4px; }
.eqm-mf .eqm-mf__h1 { font-size: 30px; line-height: 1.2; font-weight: 500; }
.eqm-mf__sub { font-size: 15px; margin: 6px 0 0 !important; }
.eqm-mf__lead { font-size: 17px; color: #333; }
.eqm-mf__small { font-size: 14px; }
.eqm-mf .eqm-mf__fine { font-size: 13px; color: var(--mf-muted); margin-top: 18px; }
.eqm-mf__empty { max-width: 640px; }
.eqm-mf__empty .eqm-mf__lead { margin-bottom: 18px; }
.eqm-mf__empty .eqm-mf__add { margin: 16px 0 0; }
.eqm-mf__sample { margin-top: 22px; }

/* reminder notice */
.eqm-mf__notice { display: flex; gap: 18px; align-items: center; background: var(--mf-due-soft); border-left: 4px solid var(--mf-due);
  border-radius: 0 var(--mf-r) var(--mf-r) 0; padding: 16px 20px; margin: 0 0 24px; }
.eqm-mf__notice-what { flex: 1; min-width: 0; }
.eqm-mf__when { font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--mf-due); }
.eqm-mf a.eqm-mf__notice-title { display: block; color: var(--mf-ink); font-size: 17px; }
.eqm-mf__notice small { display: block; font-size: 14px; color: var(--mf-text); }
.eqm-mf__notice-acts { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; }
.eqm-mf__notice-acts .eqm-mf__textbtn { color: var(--mf-text); }

/* 0.3.0: one page of areas. Add an area (always visible), then each area as a card. */
.eqm-mf .eqm-mf__addarea { display: flex; gap: 10px; max-width: 560px; margin: 0 0 26px; }
.eqm-mf .eqm-mf__addarea input[type=text] { flex: 1; height: 46px; }
.eqm-mf .eqm-mf__addarea .eqm-mf__btn { min-height: 46px; }
.eqm-mf__area { border: 1px solid var(--mf-line); border-radius: 12px; background: #fff; margin: 0 0 16px; scroll-margin-top: 160px; }
.eqm-mf__ah { display: flex; align-items: center; gap: 10px; padding: 12px 18px; background: var(--mf-soft); border-radius: 12px 12px 0 0; flex-wrap: wrap; }
.eqm-mf__area.is-shut .eqm-mf__ah { border-radius: 12px 12px 0 0; }
.eqm-mf__ah h3 { font-size: 21px; line-height: 1.2; font-weight: 600; }
.eqm-mf .eqm-mf__tog { width: 26px; height: 30px; padding: 0; border: 0; background: none; color: var(--mf-ink); font-size: 16px; cursor: pointer; min-height: 0; }
.eqm-mf .eqm-mf__ren { margin: 0; }
.eqm-mf .eqm-mf__ren[open] { flex-basis: 100%; order: 9; padding-top: 4px; }
.eqm-mf .eqm-mf__ren[open] > summary { margin-bottom: 8px; }
.eqm-mf__am { margin-left: auto; font-size: 14px; color: var(--mf-muted); white-space: nowrap; }
.eqm-mf__mv { display: flex; gap: 4px; }
.eqm-mf .eqm-mf__mv button { width: 36px; height: 36px; min-height: 0; padding: 0; border: 1px solid var(--mf-line); border-radius: 8px; background: #fff; color: var(--mf-ink); font-size: 16px; cursor: pointer; }
.eqm-mf .eqm-mf__mv button:hover { border-color: var(--mf-ink); }
.eqm-mf .eqm-mf__mv button[disabled] { color: #ccc; border-color: var(--mf-line); cursor: default; }
.eqm-mf__parts { padding: 0 18px; }
.eqm-mf__nothing { padding: 16px 0 4px; margin: 0 !important; }
/* 0.4.4: an empty area's line sits straight in the area box, so it needs the area's own side padding. */
.eqm-mf__area > .eqm-mf__nothing { padding: 16px 18px 4px; }
.eqm-mf__pr { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto 90px 96px 26px; gap: 14px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--mf-line); }
.eqm-mf__pr img, .eqm-mf__results img { width: 52px; height: 52px; object-fit: contain; border: 1px solid var(--mf-line); border-radius: 8px; padding: 3px; background: #fff; }
.eqm-mf__pr.is-off img { opacity: .5; }
.eqm-mf__pn b { display: block; color: var(--mf-ink); font-weight: 600; font-size: 15px; }
.eqm-mf__pn small { display: block; color: var(--mf-muted); font-size: 13px; }
.eqm-mf__why { display: block; font-style: normal; font-size: 13px; color: var(--mf-due); font-weight: 600; }
.eqm-mf .eqm-mf__qty { display: inline-flex; border: 1px solid var(--mf-line); border-radius: 8px; overflow: hidden; }
.eqm-mf .eqm-mf__qty button { width: 32px; height: 38px; min-height: 0; padding: 0; border: 0; border-radius: 0; background: var(--mf-soft); color: var(--mf-ink); font-size: 16px; cursor: pointer; }
.eqm-mf .eqm-mf__qty button:disabled { color: #bbb; cursor: default; }
.eqm-mf .eqm-mf__qty input[type=number] { width: 52px; height: 38px; border: 0; border-radius: 0; text-align: center; padding: 0 2px; font-weight: 600; -moz-appearance: textfield; }
.eqm-mf .eqm-mf__qty input::-webkit-inner-spin-button { -webkit-appearance: none; }
.eqm-mf__each { text-align: right; color: var(--mf-muted); font-size: 14px; white-space: nowrap; }
.eqm-mf__line { text-align: right; font-weight: 600; color: var(--mf-ink); white-space: nowrap; }
.eqm-mf .eqm-mf__x { background: none; border: 0; color: #aaa; font-size: 20px; cursor: pointer; padding: 4px; min-height: 0; }
.eqm-mf .eqm-mf__x:hover { color: var(--mf-ink); background: none; }
/* the search bar inside each area */
.eqm-mf__find { padding: 14px 18px 2px; }
.eqm-mf .eqm-mf__search { display: block; }
.eqm-mf .eqm-mf__search input[type=search] { flex: 1; height: 46px; border: 2px solid var(--mf-green); }
.eqm-mf .eqm-mf__search .eqm-mf__btn { min-height: 46px; }
.eqm-mf__results { list-style: none; margin: 8px 0 0; padding: 0 14px; border: 1px solid var(--mf-line); border-radius: var(--mf-r); }
.eqm-mf__results li { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--mf-line); margin: 0; }
.eqm-mf__results li:last-child { border-bottom: 0; }
.eqm-mf__results img { width: 44px; height: 44px; }
.eqm-mf .eqm-mf__radd { display: flex; gap: 8px; align-items: center; }
.eqm-mf .eqm-mf__radd input[type=number] { width: 72px; text-align: center; }
.eqm-mf .eqm-mf__radd select { width: 200px; }
.eqm-mf__noresults { margin: 8px 0 0 !important; }
.eqm-mf .eqm-mf__searching { margin: 10px 0 0 !important; color: var(--mf-muted); }
.eqm-mf .eqm-mf__searchfail { margin: 10px 0 0 !important; color: var(--mf-due); font-weight: 600; }
/* the area's footer: reminder, quiet links, total and Reorder */
.eqm-mf__af { display: flex; align-items: center; gap: 10px 18px; flex-wrap: wrap; padding: 16px 18px 18px; }
.eqm-mf__remline { font-size: 14px; font-weight: 500; color: var(--mf-text); }
.eqm-mf__remline::before { content: ""; display: inline-block; width: 9px; height: 9px; border-radius: 50%; background: var(--mf-green); margin-right: 8px; }
.eqm-mf__remline.is-due { color: var(--mf-due); font-weight: 600; }
.eqm-mf__remline.is-due::before { background: var(--mf-due); }
.eqm-mf__remline.is-none { color: var(--mf-muted); font-weight: 400; }
.eqm-mf__remline.is-none::before { background: #ccc; }
.eqm-mf__more { display: flex; gap: 6px 16px; align-items: baseline; flex-wrap: wrap; font-size: 14px; }
.eqm-mf .eqm-mf__remform { margin: 0; }
.eqm-mf .eqm-mf__remform[open] { flex-basis: 100%; }
.eqm-mf__af:has(.eqm-mf__remform[open]) .eqm-mf__more { flex-basis: 100%; }
.eqm-mf__buy { margin-left: auto; display: flex; align-items: center; gap: 16px; }
.eqm-mf__tot { font-size: 22px; font-weight: 600; color: var(--mf-ink); text-align: right; line-height: 1.15; }
.eqm-mf__tot small { display: block; font-size: 12px; font-weight: 400; color: var(--mf-muted); }
.eqm-mf__shutrow { display: flex; align-items: center; gap: 16px; padding: 10px 18px 12px 54px; }
.eqm-mf__shutrow form { margin-left: auto; }

/* 0.4.0: set out like the floor. Parts kept in the area, then machine cards with their own parts. */
.eqm-mf .eqm-mf__sbar { display: flex; gap: 8px; }
.eqm-mf .eqm-mf__addto { display: flex; align-items: center; gap: 8px; margin: 10px 0 0; font-size: 14px; font-weight: 500; color: var(--mf-ink); }
.eqm-mf .eqm-mf__addto select { width: auto; max-width: 100%; height: 38px; font-size: 15px; }
.eqm-mf__lsub { font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--mf-muted); padding: 14px 18px 0; }
.eqm-mf__lrem { padding: 10px 18px 0; }
.eqm-mf__loose .eqm-mf__pr:last-child { border-bottom: 0; }
.eqm-mf__mach { margin: 14px 18px 0; border: 1px solid var(--mf-line); border-left: 4px solid var(--mf-green); border-radius: 10px; background: #fff; scroll-margin-top: 160px; }
.eqm-mf__mh { display: flex; align-items: center; gap: 10px; padding: 8px 14px; flex-wrap: wrap; }
.eqm-mf__mh h4 { font-size: 18px; line-height: 1.2; font-weight: 600; }
.eqm-mf__mico { width: 18px; height: 13px; border: 2px solid var(--mf-green); border-radius: 3px; position: relative; flex: none; margin-bottom: 4px; }
.eqm-mf__mico::after { content: ""; position: absolute; left: 1px; right: 1px; bottom: -6px; height: 4px; border-left: 2px solid var(--mf-green); border-right: 2px solid var(--mf-green); }
.eqm-mf .eqm-mf__mv.is-small button { width: 30px; height: 30px; font-size: 14px; }
.eqm-mf__mach .eqm-mf__parts { padding: 0 14px; }
.eqm-mf__mach .eqm-mf__pr:last-child { border-bottom: 0; }
.eqm-mf__mach .eqm-mf__nothing { padding: 4px 0 12px; }
.eqm-mf__mf { display: flex; align-items: center; gap: 8px 18px; flex-wrap: wrap; padding: 10px 14px 12px; border-top: 1px solid var(--mf-line); background: #fafafa; border-radius: 0 0 8px 8px; }
.eqm-mf__mf .eqm-mf__mbuy { margin-left: auto; }
.eqm-mf__mf:has(.eqm-mf__remform[open]) .eqm-mf__more { flex-basis: 100%; }
.eqm-mf__sku { font-weight: 600; color: var(--mf-ink); }
.eqm-mf__area > .eqm-mf__af { margin-top: 14px; border-top: 1px solid var(--mf-line); }
.eqm-mf .eqm-mf__addmach { margin: 0; }
.eqm-mf .eqm-mf__addmach > summary { font-weight: 600; }
.eqm-mf .eqm-mf__addmach[open] { flex-basis: 100%; }
.eqm-mf__af:has(.eqm-mf__addmach[open]) .eqm-mf__more { flex-basis: 100%; }
.eqm-mf__mlist { font-size: 14px; color: var(--mf-text); }
.eqm-mf .eqm-mf__choice small { color: var(--mf-muted); font-size: 13px; }
.eqm-mf .eqm-mf__choice.is-machine { margin-left: 28px; border-left: 4px solid var(--mf-green); }

/* product page */
.eqm-mf--product { margin-top: 14px; }
.eqm-mf__tobox > summary { cursor: pointer; list-style: none; display: inline-flex; gap: 10px; align-items: center; font-size: 15px; font-weight: 600; color: var(--mf-green); }
.eqm-mf__tobox > summary::-webkit-details-marker { display: none; }
.eqm-mf__boxicon { width: 22px; height: 18px; border: 2px solid var(--mf-green); border-radius: 3px; position: relative; }
.eqm-mf__boxicon::after { content: ""; position: absolute; left: 3px; right: 3px; top: 4px; height: 2px; background: var(--mf-green); }
.eqm-mf__already { margin: 8px 0 0; }
.eqm-mf__pop { margin-top: 12px; border: 2px solid var(--mf-ink); border-radius: var(--mf-r); padding: 18px; background: #fff; }
.eqm-mf__poptitle { font-size: 18px; font-weight: 600; color: var(--mf-ink); }
.eqm-mf__pop .eqm-mf__addform { max-width: none; }
.eqm-mf__pop .eqm-mf__pair { grid-template-columns: minmax(0, 1fr) 110px; }
.eqm-mf__pop .eqm-mf__pair .eqm-mf__qtyfield:only-child { grid-column: 1 / 2; max-width: 140px; }
.eqm-mf .eqm-mf__newbox[hidden] { display: none; }
.eqm-mf__acts { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.eqm-mf__done { background: var(--mf-mint); border-radius: var(--mf-r); padding: 10px 14px; color: var(--mf-ink); font-size: 15px; }

/* pick an order */
.eqm-mf__orders { list-style: none; margin: 0; padding: 0; border-top: 2px solid var(--mf-ink); }
.eqm-mf__orders li { margin: 0; border-bottom: 1px solid var(--mf-line); }
.eqm-mf__orders a { display: grid; grid-template-columns: minmax(0, 200px) minmax(0, 1fr) auto; gap: 18px; align-items: center; padding: 14px 0; color: var(--mf-ink); }
.eqm-mf__orders a:hover { background: var(--mf-soft); text-decoration: none; }
.eqm-mf__oname b { display: block; font-size: 17px; font-weight: 600; }
.eqm-mf__oname small { display: block; font-size: 14px; color: var(--mf-muted); }
.eqm-mf__thumbs { display: flex; gap: 6px; align-items: center; min-width: 0; overflow: hidden; }
.eqm-mf__thumbs img { width: 46px; height: 46px; object-fit: contain; border: 1px solid var(--mf-line); border-radius: 8px; padding: 3px; background: #fff; flex: none; }
.eqm-mf__thumbs .eqm-mf__more { font-size: 14px; color: var(--mf-muted); padding-left: 4px; }
/* save: the parts, then one question */
.eqm-mf__plist { list-style: none; margin: 0 0 24px; padding: 0; border-top: 1px solid var(--mf-line); max-width: 720px; }
.eqm-mf__plist li { display: flex; gap: 12px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--mf-line); margin: 0; color: var(--mf-ink); font-size: 15px; }
.eqm-mf__plist img { width: 44px; height: 44px; object-fit: contain; border: 1px solid var(--mf-line); border-radius: 8px; padding: 3px; background: #fff; flex: none; }
.eqm-mf__plist small { display: block; font-size: 13px; color: var(--mf-muted); }
.eqm-mf .eqm-mf__ask { max-width: 560px; }
.eqm-mf__ask fieldset { border: 0; margin: 0 0 18px; padding: 0; min-width: 0; }
.eqm-mf__ask legend { font-size: 21px; font-weight: 600; color: var(--mf-ink); margin: 0 0 12px; padding: 0; text-transform: none; letter-spacing: 0; }
.eqm-mf .eqm-mf__choice { display: flex; gap: 12px; align-items: center; min-height: 52px; padding: 8px 16px; margin: 0 0 8px; border: 1px solid var(--mf-line);
  border-radius: var(--mf-r); color: var(--mf-ink); font-size: 16px; cursor: pointer; background: #fff; }
.eqm-mf .eqm-mf__choice:has(input:checked) { border-color: var(--mf-green); box-shadow: 0 0 0 1px var(--mf-green); background: var(--mf-mint); }
.eqm-mf .eqm-mf__choice input[type=radio] { width: 20px; height: 20px; margin: 0; accent-color: var(--mf-green); flex: none; }
.eqm-mf .eqm-mf__choice.is-new { flex-wrap: wrap; }
.eqm-mf .eqm-mf__choice.is-new > span { flex: none; }
.eqm-mf .eqm-mf__choice.is-new input[type=text] { flex: 1 1 200px; width: auto; }
.eqm-mf .eqm-mf__bigfield { height: 52px; font-size: 17px; }
.eqm-mf__savebar { display: flex; gap: 8px 14px; align-items: center; flex-wrap: wrap; margin: 16px 0; font-size: 14px; color: #555; }

/* phone */
@media (max-width: 767px) {
  /* The account tabs: one sideways row of pills, faded at the edge so it reads as scrollable, open tab in view. */
  body.woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex !important; flex-wrap: nowrap; gap: 6px; overflow-x: auto; margin: 0 0 6px; padding: 0 0 4px;
    scrollbar-width: none; -webkit-mask-image: linear-gradient(to right, #000 80%, transparent); mask-image: linear-gradient(to right, #000 80%, transparent); }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar { display: none; }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul.is-end { -webkit-mask-image: none; mask-image: none; }
  body.woocommerce-account .woocommerce-MyAccount-navigation li { flex: 0 0 auto; width: auto !important; margin: 0 !important; border: 0 !important; }
  body.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; white-space: nowrap; padding: 8px 14px !important; border: 1px solid #dcdcdc; border-radius: 999px; line-height: 1.2; }
  body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { border-color: #078b35; background: #078b35; color: #fff !important; }
  /* My factory: the theme's breadcrumb gives way to one "‹ Back to …" link. */
  body.woocommerce-my-factory .inner-breadcrumbs { display: none; }
  .eqm-mf .eqm-mf__back--phone { display: inline-block; }

  .eqm-mf .eqm-mf__h1 { font-size: 25px; }
  .eqm-mf__empty .eqm-mf__btn--big, .eqm-mf__ask .eqm-mf__btn--big { width: 100%; }
  .eqm-mf__notice { flex-direction: column; align-items: stretch; gap: 10px; }
  .eqm-mf__notice-acts { justify-content: space-between; }
  .eqm-mf .eqm-mf__addarea .eqm-mf__btn { padding: 0 16px; }
  .eqm-mf__area { scroll-margin-top: 120px; }
  .eqm-mf__ah { padding: 10px 12px; gap: 6px 8px; }
  .eqm-mf__ah h3 { font-size: 19px; }
  .eqm-mf__am { order: 8; flex-basis: 100%; margin-left: 34px; }
  .eqm-mf__mv { margin-left: auto; }
  .eqm-mf__parts { padding: 0 12px; }
  .eqm-mf__pr { grid-template-columns: 48px minmax(0, 1fr) auto; gap: 8px 12px; }
  .eqm-mf__pr > img { width: 48px; height: 48px; grid-row: 1 / 3; align-self: start; }
  .eqm-mf__pr .eqm-mf__pn { grid-column: 2; grid-row: 1; }
  .eqm-mf__pr .eqm-mf__qty { grid-column: 2; grid-row: 2; justify-self: start; }
  .eqm-mf__pr .eqm-mf__each { display: none; }
  .eqm-mf__pr .eqm-mf__line { grid-column: 3; grid-row: 2; }
  .eqm-mf__pr .eqm-mf__del { grid-column: 3; grid-row: 1; justify-self: end; align-self: start; }
  .eqm-mf__find { padding: 12px 12px 2px; }
  .eqm-mf .eqm-mf__search input[type=search] { font-size: 15px; }
  .eqm-mf__results { padding: 0 10px; }
  .eqm-mf__results li { grid-template-columns: 44px minmax(0, 1fr); }
  .eqm-mf .eqm-mf__radd { grid-column: 1 / 3; flex-wrap: wrap; }
  .eqm-mf .eqm-mf__radd select { width: 100%; }
  .eqm-mf__af { padding: 14px 12px; }
  .eqm-mf__more { flex-basis: 100%; order: 2; }
  .eqm-mf__buy { margin-left: 0; order: 3; flex-basis: 100%; flex-direction: column; align-items: stretch; gap: 10px; }
  .eqm-mf__buy form, .eqm-mf__buy .eqm-mf__btn { width: 100%; }
  .eqm-mf__tot { text-align: left; }
  .eqm-mf__shutrow { padding: 8px 12px 12px; }
  .eqm-mf__orders a { grid-template-columns: minmax(0, 1fr) auto; gap: 8px 12px; }
  .eqm-mf__orders .eqm-mf__thumbs { grid-column: 1; grid-row: 2; }
  .eqm-mf__orders a > .eqm-mf__btn { grid-column: 2; grid-row: 1 / 3; }
  .eqm-mf__thumbs img { width: 40px; height: 40px; }
  .eqm-mf__ask legend { font-size: 19px; }
  .eqm-mf__mach { margin: 12px 12px 0; scroll-margin-top: 120px; }
  .eqm-mf__mh { padding: 8px 10px; gap: 6px 8px; }
  .eqm-mf__mh h4 { font-size: 16px; }
  .eqm-mf__mh .eqm-mf__am { order: 8; flex-basis: 100%; margin-left: 34px; }
  .eqm-mf__mh .eqm-mf__mv { margin-left: auto; }
  .eqm-mf__mach .eqm-mf__parts { padding: 0 10px; }
  .eqm-mf__lsub { padding: 12px 12px 0; }
  .eqm-mf__lrem { padding: 8px 12px 0; }
  .eqm-mf__mf { padding: 10px; }
  .eqm-mf__mf .eqm-mf__more { flex-basis: 100%; }
  .eqm-mf__mf .eqm-mf__mbuy, .eqm-mf__mf .eqm-mf__mbuy .eqm-mf__btn { margin-left: 0; width: 100%; }
  .eqm-mf__mf .eqm-mf__mbuy { order: 3; }
  .eqm-mf .eqm-mf__addto select { flex: 1; }
  .eqm-mf .eqm-mf__choice.is-machine { margin-left: 16px; }
}

/* 0.4.4: changes save in the background; My factory dims a moment while it redraws, the changed place glows once,
   and the WooCommerce message shows as a short note at the bottom of the screen. */
.eqm-mf.is-busy { opacity: .55; pointer-events: none; transition: opacity .2s .15s; }
.eqm-mf .is-flash { animation: eqm-mf-flash 1.6s ease-out; }
@keyframes eqm-mf-flash { 0% { box-shadow: 0 0 0 3px var(--mf-green); } 100% { box-shadow: 0 0 0 3px transparent; } }
.eqm-mf-toast { position: fixed; left: 50%; bottom: 20px; transform: translateX(-50%); z-index: 99999; display: flex; gap: 14px;
  align-items: center; max-width: min(560px, calc(100vw - 32px)); padding: 12px 14px 12px 18px; border-radius: 10px;
  background: #1f2a24; color: #fff; font-size: 15px; line-height: 1.4; box-shadow: 0 8px 24px rgba(0,0,0,.25); transition: opacity .3s; }
.eqm-mf-toast.is-error { background: #8a1f17; }
.eqm-mf-toast.is-gone { opacity: 0; pointer-events: none; }
.eqm-mf-toast__msg a { color: #fff; text-decoration: underline; margin-left: 6px; background: none; border: 0; padding: 0; font: inherit; }
.eqm-mf-toast__msg ul, .eqm-mf-toast__msg li { list-style: none; margin: 0; padding: 0; }
.eqm-mf-toast__x { background: none; border: 0; color: #fff; font-size: 20px; line-height: 1; cursor: pointer; padding: 2px 4px; min-height: 0; opacity: .8; }

/* 0.5.0: parts from other suppliers. Set apart from EQM's own parts: a grey dashed edge, an "Other supplier" tag,
   who they buy it from, no price, "Not in reorder". */
.eqm-mf .eqm-mf__pr.is-other { background: #f6f7f8; border: 1px dashed #c3c8ce; border-radius: 8px; margin: 8px -8px; padding: 10px 8px; }
.eqm-mf__pr.is-other + .eqm-mf__pr.is-other { margin-top: 6px; }
.eqm-mf__pr.is-other .eqm-mf__pn b { color: #333; }
.eqm-mf__pr.is-other .eqm-mf__ophoto img { width: 52px; height: 52px; object-fit: cover; padding: 0; }
.eqm-mf__onophoto { display: block; width: 52px; height: 52px; border: 1px dashed #b5bcc3; border-radius: 8px; background: #fff
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239aa3ad' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 8l-9-5-9 5 9 5 9-5z'/%3E%3Cpath d='M3 8v8l9 5 9-5V8'/%3E%3Cpath d='M12 13v8'/%3E%3C/svg%3E") center / 26px no-repeat; }
.eqm-mf .eqm-mf__otag { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #4b5563; background: #e5e7eb; border-radius: 4px; padding: 2px 7px; margin-bottom: 4px; }
.eqm-mf .eqm-mf__onote { font-size: 12px; color: var(--mf-muted); text-align: right; line-height: 1.3; }
.eqm-mf .eqm-mf__oedit { margin: 4px 0 0; }
.eqm-mf .eqm-mf__oedit > summary { font-size: 13px; }
.eqm-mf .eqm-mf__oedit[open] { background: #fff; border: 1px solid var(--mf-line); border-radius: 8px; padding: 10px 12px 12px; margin-top: 8px; }
.eqm-mf .eqm-mf__addother { margin: 0; }
.eqm-mf .eqm-mf__addother[open] { flex-basis: 100%; background: #f6f7f8; border: 1px dashed #c3c8ce; border-radius: 8px; padding: 12px 14px 14px; }
.eqm-mf__af:has(.eqm-mf__addother[open]) .eqm-mf__more, .eqm-mf__mf:has(.eqm-mf__addother[open]) .eqm-mf__more { flex-basis: 100%; }
.eqm-mf input[type=file] { display: block; width: 100%; font-size: 14px; padding: 8px 0; border: 0; background: none; }
.eqm-mf .eqm-mf__check { display: flex; gap: 8px; align-items: center; font-size: 14px; margin: 0 0 12px; }
@media (max-width: 767px) {
  .eqm-mf .eqm-mf__pr.is-other { margin: 8px -6px; padding: 10px 6px; }
  .eqm-mf__pr.is-other > .eqm-mf__ophoto, .eqm-mf__pr.is-other > .eqm-mf__onophoto { grid-row: 1 / 3; align-self: start; }
  .eqm-mf__pr.is-other .eqm-mf__ophoto img, .eqm-mf__onophoto { width: 48px; height: 48px; }
  .eqm-mf .eqm-mf__onote { font-size: 11px; }
  .eqm-mf .eqm-mf__addother[open] .eqm-mf__pair, .eqm-mf .eqm-mf__oedit[open] .eqm-mf__pair { grid-template-columns: minmax(0, 1fr); gap: 0; }
}
