/* Plan finder page only (loaded via pageCss). Uses the site's own tokens from site.css; no new fonts or colors. */
.ff{border:1px solid var(--rule);background:var(--soft);padding:16px 18px;margin:10px 0 18px}
.ff .grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 20px;margin:14px 0}
.ff .f{border:0;padding:0;margin:0;min-width:0}
.ff label:not(.inl),.ff legend{display:block;font:600 12px "IBM Plex Sans";text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 5px;padding:0}
.ff input[type=number]{width:100%;font:500 16px "IBM Plex Mono",monospace;color:var(--ink);padding:9px 10px;border:1.5px solid var(--navy);border-radius:3px;background:#fff}
.ff .inl{display:inline-flex;align-items:center;gap:7px;font-size:15px;margin:2px 14px 2px 0;cursor:pointer}
.ff input[type=checkbox],.ff input[type=radio]{width:18px;height:18px;accent-color:var(--navy);margin:0}
.ff .engs{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 10px}
.ff .eng-set{margin-top:6px}
.ff input:focus-visible,.finder-tbl a:focus-visible,.chip:focus-visible,.vbtn:focus-visible,.ff button:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
.scn{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 0}
.chip{border:1px solid var(--navy);background:#fff;color:var(--navy);border-radius:99px;padding:5px 13px;font-size:14px;text-decoration:none}
.chip:hover{background:var(--navy);color:#fff}
#results{scroll-margin-top:12px;outline:0}
#results .answer{margin:8px 0 16px}
.nojs{margin:0}
.finder-tbl .pn{display:block;font-size:13px;color:var(--muted)}
.finder-tbl .u{font-size:12px;color:var(--muted);margin-left:1px}
.finder-tbl .tag{display:inline-block;font:500 11px "IBM Plex Mono",monospace;border:1px solid var(--rule);border-radius:99px;padding:0 7px;color:var(--muted)}
.finder-tbl td.sub{background:none}
.finder-tbl td.eng{font-size:13px;max-width:300px}
.vbtn{display:inline-block;font-size:13px;font-weight:600;color:var(--navy);border:1.5px solid var(--navy);border-radius:3px;padding:4px 10px;text-decoration:none;white-space:nowrap}
.vbtn:hover{background:var(--navy);color:#fff}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.fl{padding-left:18px;margin:6px 0 18px}.fl li{margin:7px 0;font-size:15px}.fl .vbtn{margin-left:4px;padding:2px 8px}
@media (max-width:820px){
  .ff .grid{grid-template-columns:1fr 1fr}
  .finder-tbl td.eng{max-width:none}
  .finder-tbl.stack td.num.sub{text-align:left}
  .finder-tbl .go{padding-top:6px}
  .fl .vbtn{display:inline-block;margin-top:4px}
}
@media (max-width:420px){.ff .grid{grid-template-columns:1fr}}
